一、深度研究智能体:AI时代的自动研究员

在信息爆炸的当下,深度研究智能体(Deep Research Agents)成为突破信息壁垒的核心工具。它并非简单的信息聚合器,而是具备"规划-执行-反思-迭代"能力的智能系统,能够针对特定主题完成从资料搜集到报告生成的全流程自动化。

核心能力拆解

一个成熟的深度研究智能体必须具备五大核心模块,形成闭环工作流:

  • 智能规划:基于用户需求生成逻辑清晰的研究框架,明确报告的核心章节与论证方向,避免研究偏离主题
  • 任务解构:将宏观研究主题拆解为可执行的子任务,例如将"AI发展趋势"拆分为技术突破、产业应用、政策监管等细分方向
  • 精准调研:针对子任务生成专业搜索指令,调用网络工具获取权威数据,同时过滤低质量信息
  • 动态反思:分析已获取信息的完整性与准确性,识别知识盲区并发起补充搜索,提升研究深度
  • 报告生成:将碎片化信息整合成逻辑连贯、语言专业的研究报告,支持多种格式输出

与传统搜索引擎相比,深度研究智能体的核心优势在于"主动性"——它能主动发现信息缺口并迭代优化,而非被动响应单一查询。

二、系统架构:LangGraph与DeepSeek的协同设计

本方案采用"LangGraph做骨架,DeepSeek做大脑"的架构设计,LangGraph负责工作流的可视化编排与状态管理,DeepSeek提供强大的逻辑推理与自然语言处理能力,二者结合实现高效协同。

下图展示了我们将要构建的系统,该系统将执行以下步骤:

  1. 用户提供一个需要研究的查询或主题。
  2. 大模型(LLM)将创建一个最终报告的提纲,并被指示生成的段落数量不超过某个限制。
  3. 每个段落的描述将单独输入到一个研究流程中,以生成一套全面的信息用于报告构建。研究流程的详细描述将在下一节中阐述。
  4. 所有信息将进入总结步骤,构建最终报告,包括结论。
  5. 报告将以 Markdown 形式交付给用户。

深度研究智能体结构示意图

研究步骤

让我们深入探讨上一段中定义的研究步骤:

  1. 一旦我们有了每个段落的提纲,它将被传递给一个大模型(LLM),以构建网络搜索查询,从而尽可能丰富所需信息。
  2. LLM 将输出搜索查询及其背后的推理。
  3. 我们将根据查询执行网络搜索,并检索最相关的结果。
  4. 结果将被传递到反思步骤,LLM 将在此处对任何遗漏的细微之处进行推理,并尝试提出能够丰富初始结果的搜索查询。
  5. 这个过程将重复 n次,以期获得最佳信息集。

研究步骤示意图

三、实战开发:从环境配置到代码实现

本节将详细讲解智能体的开发过程,包含环境搭建、核心模块编码与关键函数实现,所有代码均经过实测验证可直接运行。

实现智能体

在进入实现阶段之前,我们先做一些技术准备。比如准备一些API KEY,我这里是直接使用的Deepseek,大家可以替换下下面的api_keybase_url

pip install openai

本项目我们将使用未蒸馏的 DeepSeek-R1 版本,其参数量为 671B。

import os
import openai

client = openai.OpenAI(
    api_key=os.environ.get("SAMBANOVA_API_KEY"),
    base_url="https://preview.snova.ai/v1",
)

response = client.chat.completions.create(model="DeepSeek-R1",
    messages=[{"role":"system","content":"You are a helpful assistant"},\
              {"role":"user","content":"Tell me something interesting about human species"}],
    temperature=1
)

print(response.choices[0].message.content)

您应该会看到类似以下内容:

<think>
Okay, so I'm trying to ... <REDACTED>
</think>

The human species is distinguished by the remarkable cognitive abilities of the brain, which underpin a array of unique traits. Our brain's advanced structure and function enable complex thought, language, and social organization. These capabilities have driven innovation, art, and the creation of intricate societies, setting humans apart in their ability to adapt, innovate, and create beyond any other species. This cognitive prowess is the cornerstone of human achievement and our profound impact on the world.
```答案中将始终包含推理标记。虽然看到思考过程很有趣,但我们的系统只需要答案。这时我们可以创建一个清理函数来删除 `<think>` 标签之间的所有内容。

```python
def remove_reasoning_from_output(output):
    return output.split("</think>")[-1].strip()

这个函数简单但实用。

这里可以替换为DeepSeek的api情求方式:

第一部分:定义状态

首先,我们需要定义整个系统的状态,该状态将在智能体(Agent)在环境中运行时不断演进,并被系统的不同部分选择性地使用。

我们将状态与智能体系统的阶段关联起来:

中间状态

  • 阶段 1 将是创建大纲,在此阶段报告结构将被规划,其状态也会随之演进。我们将从一个空状态开始,然后将其演变为类似以下结构(推理在阶段 2 中描述):
{
      "report_title": "报告标题",
      "paragraphs": [
          {
              "title": "段落标题",
              "content": "段落内容",
              "research": <...>
          },
          {
              "title": "段落标题",
              "content": "段落内容",
              "research": <...>
          }
      ]
}

上述状态可以使用 Python 的 dataclasses 库优雅地实现,如下所示:

@dataclass
class Paragraph:
      title: str = ""
      content: str = ""
      research: Research = field(default_factory=Research)

@dataclass
class State:
      report_title:str = ""
      paragraphs: List[Paragraph] = field(default_factory=list)
  • 阶段 2 是我们将迭代每个段落状态的阶段。我们将更改每个段落的 "research"字段。我们将使用以下结构来表示每个段落的研究状态:
{
"search_history": [{"url": "某个 URL", "content": "某个内容"}],
"latest_summary": "组合搜索历史的摘要",
"reflection_iteration": 1
}

研究步骤示意图

search_history:我们将所有执行的搜索存储在一个列表中,我们将同时需要 URL 和内容,以便我们可以对搜索结果进行去重,并在稍后形成最终报告时引用这些链接。

latest_summary:根据所有搜索结果给出的段落的总结版本。它将用于反思步骤,以确定是否需要更多搜索,并传递给摘要和报告创建的下一步。

reflection_iteration:这用于跟踪当前反思迭代的次数,并在达到限制时强制停止。

同样,我们可以通过 dataclasses 实现研究状态:

@dataclass
class Search:
      url: str = ""
      content: str = ""

@dataclass
class Research:
      search_history: List[Search] = field(default_factory=list)
      latest_summary: str = ""
      reflection_iteration: int = 0
第二部分:创建报告大纲

不同模型版本在生成答案时的一致性会有所不同。我在 DeepSeek-R1 上进行了大量实验,以下提示词似乎能持续生成格式良好的输出:

output_schema_report_structure = {
        "type": "array",
        "items": {
            "type": "object",
            "properties": {
                "title": {"type": "string"},"content": {"type": "string"}
            }
        }
    }

SYSTEM_PROMPT_REPORT_STRUCTURE = f"""
你是一个深度研究助手。给定一个查询,你需要为报告计划一个结构,包括要包含的段落。
确保段落的顺序合乎逻辑。
一旦创建了大纲,你将获得工具来分别搜索网络并对每个部分进行反思。
使用以下 JSON 模式定义来格式化输出:<OUTPUT JSON SCHEMA>
{json.dumps(output_schema_report_structure, indent=2)}
</OUTPUT JSON SCHEMA>

“title”和“content”属性将用于更深层次的研究。
确保输出是一个 JSON对象,并符合上面定义的输出 JSON 模式。
只返回 JSON 对象,不需要任何解释或额外文本。
"""

注意这个提示语可以根据不同的模型效果进行调整

段落结构的状态

让我们使用上述系统提示词运行一些示例查询:

response = client.chat.completions.create(
    model="DeepSeek-R1",
    messages=[{"role":"system","content":SYSTEM_PROMPT_REPORT_STRUCTURE},\
              {"role":"user","content":"告诉我一些关于人类物种的有趣事情"}],
    temperature=1
)

print(response.choices[0].message.content)

您将得到类似以下内容:

```json
[
{
    "title": "人类适应性简介",
    "content": "人类拥有独特的适应能力,这对于他们在各种环境中生存和占据主导地位至关重要。本简介将为探索人类适应性的各个方面奠定基础。"
},
...
<REDACTED>
...
{
    "title": "结论:适应性在人类生存中的作用",
    "content": "适应性一直是人类生存和进化的基石,使我们能够面对挑战并探索新领域,为未来的潜力提供了深刻见解。"
}
]

输出周围的这些 JSON 标签并无帮助,因为我们需要将输出转换为 Python 字典。一个非常简单的函数可以删除输出的第一行和最后一行:

def clean_json_tags(text):
    return text.replace("```json\n", "").replace("\n```", "")

这是经过正确清理的输出:

json.loads(clean_json_tags(remove_reasoning_from_output(response.choices[0].message.content)))

我们现在可以直接将上述内容作为输入到我们的全局状态中。

STATE = State()

report_structure = json.loads(clean_json_tags(remove_reasoning_from_output(response.choices[0].message.content)))

for paragraph in report_structure:
    STATE.paragraphs.append(Paragraph(title=paragraph["title"], content=paragraph["content"]))
第三部分:Web 搜索工具

我们将使用 Tavily 执行网络搜索。我们可以在此处获取您的 Token,每个月可以免费1000次搜索,对于实验demo足够了

该工具非常简单:

def tavily_search(query, include_raw_content=True, max_results=5):
    tavily_client = TavilyClient(api_key=os.getenv("TAVILY_API_KEY"))

    return tavily_client.search(query,
                                include_raw_content=include_raw_content,
                                max_results=max_results)

每次函数调用将返回最多 max_results 条网络搜索结果,每条搜索结果将返回:

  • 搜索结果的标题。
  • 搜索结果的 URL。
  • 内容的摘要。
  • 如果可能,返回页面的完整内容。我们希望获得完整内容以获得最佳结果。

一旦我们从 Web 搜索工具中获取结果,我们可以直接将其添加到全局状态中,无需调用任何 LLM,但我们需要确保我们正在更新段落列表中的适当元素。

基本上,考虑到我们定义的结构:

{
    "report_title": "报告标题",
    "paragraphs": [
        {
            "title": "段落标题",
            "content": "段落内容",
            "research": <...>
        },
        {
            "title": "段落标题",
            "content": "段落内容",
            "research": <...>
        }
    ]
}

并且考虑到我们正在研究第 i 个段落,我们需要更新 STATE.paragraphs[i].research 字段。

回顾研究字段的结构:

"search_history": [{"url": "某个 URL", "content": "某个内容"}],
"latest_summary": "组合搜索历史的摘要",
"reflection_iteration": 1
}

下面是一个方便的函数,它将根据 Tavily 搜索结果、段落索引和状态对象正确更新状态。


def update_state_with_search_results(search_results, idx_paragraph, state):
    for search_result in search_results["results"]:
        search = Search(url=search_result["url"], content=search_result["raw_content"])
        state.paragraphs[idx_paragraph].research.search_history.append(search)
    return state

我们将追加到搜索历史中。latest_summaryreflection_iteration 字段需要 LLM 的一些处理,将在第五部分:反思中讨论。

第四部分:规划搜索

为了规划第一次搜索,我发现以下提示词能持续产生良好的结果:

input_schema_first_search = {
            "type":"object",
            "properties": {
                "title": {"type": "string"},
                "content": {"type": "string"}
            }
        }

output_schema_first_search = {"type": "object",
            "properties": {
                "search_query": {"type": "string"},
                "reasoning": {"type": "string"}
            }
        }

SYSTEM_PROMPT_FIRST_SEARCH = f"""
你是一个深度研究助手。你将获得一份报告中的一个段落,其标题和预期的内容,遵循以下 JSON 模式定义:

<INPUT JSON SCHEMA>
{json.dumps(input_schema_first_search, indent=2)}
</INPUT JSON SCHEMA>

你可以使用一个网络搜索工具,它接受“search_query”作为参数。
你的任务是反思这个主题,并提供最优的网络搜索查询来丰富你当前的知识。
使用以下 JSON 模式定义来格式化输出:

<OUTPUT JSON SCHEMA>
{json.dumps(output_schema_first_search, indent=2)}
</OUTPUT JSON SCHEMA>确保输出是一个 JSON 对象,并符合上面定义的输出 JSON 模式。
只返回 JSON 对象,不需要任何解释或额外文本。
"""

我们在输出模式中请求推理,只是为了强制模型对查询进行更多思考。虽然这对于推理模型来说可能有些大材小用,但对于普通 LLM 来说可能是一个好主意。尽管我们正在为此使用 DeepSeek R1,但我们不一定需要。推理模型在深度研究智能体的第一步(需要规划报告结构)中特别有用。

鉴于我们现在已经规划好了一系列包含内容和描述的段落,我们可以将第三部分的输出直接输入到提示词中,其形式如下:

response = client.chat.completions.create(
    model="DeepSeek-R1",
    messages=[{"role":"system","content":SYSTEM_PROMPT_FIRST_SEARCH},{"role":"user","content":json.dumps(STATE.paragraphs[0])}],
    temperature=1
)

print(response.choices[0].message.content)

STATE.paragraphs[0] 指向第一个段落的状态,其中 research 字段仍然为空。

我为我的第一个搜索计划得到了以下内容:

{"search_query": "智人特征 基本生物学特征 认知能力 行为特征"}

我可以直接将查询输入到我的搜索工具中:

tavily_search("智人特征 基本生物学特征 认知能力 行为特征")
第五部分:第一次总结

第一次总结与即将到来的反思步骤不同,因为还没有可供反思的内容,而这一步将产生反思的起点。以下提示词效果相对较好:

input_schema_first_summary = {
            "type": "object",
            "properties": {
                "title": {"type": "string"},
                "content": {"type": "string"},
                "search_query": {"type": "string"},
                "search_results": {
                    "type": "array",
                    "items": {"type": "string"}
                }
            }
        }

output_schema_first_summary= {
            "type": "object",
            "properties": {
                "paragraph_latest_state": {"type": "string"}
            }
        }

SYSTEM_PROMPT_FIRST_SUMMARY = f"""
你是一个深度研究助手。你将获得一个搜索查询、搜索结果以及你正在研究的报告段落,遵循以下 JSON 模式定义:

<INPUT JSON SCHEMA>
{json.dumps(input_schema_first_summary, indent=2)}
</INPUT JSON SCHEMA>

你的任务是作为一名研究员撰写该段落,使用搜索结果来与段落主题保持一致,并将其适当地组织以包含在报告中。
使用以下 JSON 模式定义来格式化输出:

<OUTPUT JSON SCHEMA>
{json.dumps(output_schema_first_summary, indent=2)}
</OUTPUT JSON SCHEMA>

确保输出是一个 JSON 对象,并符合上面定义的输出 JSON 模式。
只返回 JSON 对象,不需要任何解释或额外文本。
"""

我们现在需要以以下格式向 LLM 提供数据:

 {
    "title": "标题","content": "内容",
    "search_query": "搜索查询",
    "search_results": []
}

我们可以从已有的数据构建 JSON。

根据以下搜索结果:

search_results = tavily_search("智人特征 基本生物学特征 认知能力 行为特征")

JSON 将如下所示:

input = {
    "title": "人类适应性简介","content": "人类拥有独特的适应能力,这对于他们在各种环境中生存和占据主导地位至关重要。本简介将为探索人类适应性的各个方面奠定基础。",
    "search_query": "智人特征 基本生物学特征 认知能力 行为特征",
    "search_results": [result["raw_content"][0:20000] for result in search_results["results"] if result["raw_content"]]
}

然后我们可以运行:

response = client.chat.completions.create(
    model="DeepSeek-R1",
    messages=[{"role":"system","content": SYSTEM_PROMPT_FIRST_SUMMARY},\
              {"role":"user","content":json.dumps(input)}],
    temperature=1
)

print(remove_reasoning_from_output(response.choices[0].message.content))

您将得到类似以下内容:

{
  "paragraph_latest_state": "智人,即现代人类所属的物种,代表了地球生命进化史中独特而迷人的一章。作为智人属中唯一现存的物种,智人以其生物学、认知和行为特征的结合而区别于其他灵长类动物和已灭绝的人类近亲。我们的生物学特征包括一个庞大且结构先进的大脑,其新皮层与我们的进化祖先相比显著扩张。这种解剖学发展使得卓越的认知能力成为可能,例如复杂的解决问题、抽象思维以及语言和符号交流的能力。在行为方面,智人展现出复杂的社会结构、文化习俗和技术创新,这些在塑造我们适应各种环境和作为一个物种繁荣的能力方面至关重要。这些特征共同强调了定义人类状况的生物学和行为之间复杂的相互作用。"
}

这正是我们将用于更新 STATE.paragraphs[0].research.latest_summary 字段的内容。在第六部分中,我们也将反思段落摘要的不断更新的最新状态。

第六部分:反思

我们现在拥有报告段落内容的最新状态,并将利用它来改进内容,通过提示我们的 LLM 反思文本,并寻找它在起草该段落时可能遗漏的任何角度。

以下提示词做得非常出色:

input_schema_reflection = {
            "type": "object",
            "properties": {
                "title": {"type": "string"},
                "content": {"type": "string"},
                "paragraph_latest_state": {"type": "string"}
            }
        }

output_schema_reflection = {
            "type": "object",
            "properties": {
                "search_query": {"type": "string"},
                "reasoning": {"type": "string"}
            }
        }

SYSTEM_PROMPT_REFLECTION = f"""
你是一名深度研究助手。你负责为研究报告构建全面的段落。你将获得段落标题和计划内容摘要,以及你已经创建的段落的最新状态,所有这些都遵循以下 JSON 模式定义:

<INPUT JSON SCHEMA>
{json.dumps(input_schema_reflection, indent=2)}
</INPUT JSON SCHEMA>

你可以使用一个网络搜索工具,它接受“search_query”作为参数。你的任务是反思当前段落文本的状态,思考你是否遗漏了主题的某些关键方面,并提供最优的网络搜索查询来丰富最新状态。
使用以下 JSON 模式定义来格式化输出:

<OUTPUT JSON SCHEMA>
{json.dumps(output_schema_reflection, indent=2)}
</OUTPUT JSON SCHEMA>

确保输出是一个 JSON 对象,并符合上面定义的输出 JSON 模式。
只返回 JSON 对象,不需要任何解释或额外文本。
"""

对于我们当前正在实现的运行,输入将如下所示:

input = {"paragraph_latest_state": "智人,即现代人类所属的物种,代表了地球生命进化史中独特而迷人的一章。作为智人属中唯一现存的物种,智人以其生物学、认知和行为特征的结合而区别于其他灵长类动物和已灭绝的人类近亲。我们的生物学特征包括一个庞大且结构先进的大脑,其新皮层与我们的进化祖先相比显著扩张。这种解剖学发展使得卓越的认知能力成为可能,例如复杂的解决问题、抽象思维以及语言和符号交流的能力。在行为方面,智人展现出复杂的社会结构、文化习俗和技术创新,这在塑造我们适应各种环境和作为一个物种繁荣的能力方面至关重要。这些特征共同强调了定义人类状况的生物学和行为之间复杂的相互作用。",
            "title": "引言",
            "content": "人类物种,智人,是地球上最独特和迷人的物种之一。本节将介绍人类的基本特征,并为探索该物种的有趣方面奠定基础。"}

像之前一样,我们运行以下代码:

response = client.chat.completions.create(
    model="DeepSeek-R1",
    messages=[{"role":"system","content": SYSTEM_PROMPT_REFLECTION},\
              {"role":"user","content":json.dumps(input)}],
    temperature=1
)

print(remove_reasoning_from_output(response.choices[0].message.content))

输出如下:

{
  "search_query": "关于智人进化的最新研究、与其他人类物种的互动以及促成其成功的因素",
  "reasoning": "当前段落很好地概述了智人的特征,但缺乏进化史以及与其他物种互动方面的深度。纳入这些主题的最新研究将增强段落的全面性并提供最新信息。"
}

现在我们运行查询,将新结果附加到段落状态,并将新结果与最新的段落状态结合起来。

第七部分:通过反思搜索结果丰富最新段落状态

在运行反思步骤的搜索查询后:

search_results = tavily_search("关于智人进化的最新研究、与其他人类物种的互动以及促成其成功的因素")

我们可以通过以下方式更新段落的搜索状态:

update_state_with_search_results(search_results, idx_paragraph, state)

现在我们将步骤 6. 和 7. 循环执行指定次数的反思步骤。

第八部分:总结并生成报告

我们对在第二部分中规划的每个段落重复执行第四部分到第七部分的步骤。一旦所有段落的最终状态都准备好,我们就可以将所有内容整合起来。我们将使用一个大模型(LLM)来完成这项工作,并生成一个格式精美的 Markdown 文档。以下是提示词:

input_schema_report_formatting = {
            "type": "array",
            "items": {
                "type": "object",
                "properties": {"title": {"type": "string"},
                    "paragraph_latest_state": {"type": "string"}
            }
        }
    }

SYSTEM_PROMPT_REPORT_FORMATTING = f"""你是一名深度研究助手。你已经完成了研究,并构建了报告中所有段落的最终版本。
你将以以下 JSON 格式获取数据:

<INPUT JSON SCHEMA>
{json.dumps(input_schema_report_formatting, indent=2)}
</INPUT JSON SCHEMA>

你的任务是精美地格式化报告,并以 Markdown 格式返回。
如果报告中没有“结论”段落,请根据其他段落的最新状态将其添加到报告末尾。
"""

运行:

report_data = [{"title": paragraph.title, "paragraph_latest_state": paragraph.research.latest_summary} for paragraphin STATE.paragraphs]

response = client.chat.completions.create(
    model="DeepSeek-R1",
    messages=[{"role":"system","content": SYSTEM_PROMPT_REPORT_FORMATTING},\
              {"role":"user","content":json.dumps(report_data)}],
    temperature=1
)

print(remove_reasoning_from_output(response.choices[0].message.content))

就这样,我们就获得了一份关于所提供主题的深度研究报告。

结论

此外,还有许多细微之处需要考虑,可以使系统更加稳定:

  • 让系统持续生成格式良好的 JSON 输出并不容易,因为推理模型在结构化输出方面并非总能表现最佳。
  • 考虑到上述情况,在系统拓扑中为不同任务使用不同模型可能更有意义,我们主要在第一步(需要规划报告结构)中真正需要推理模型。
  • 在如何搜索网络以及如何对检索到的结果进行排序方面,还有许多可以改进的地方。
  • 反思步骤的次数可以配置为动态,由 LLM 判断是否需要更多反思。
  • 我们可以返回在网络搜索中使用的链接,并在报告中为每个段落提供参考文献。
  • ……

运行DeepResearch

为了更好看到Deepresearch执行的状态,我用大模型帮我写了一个streamlit应用,功能很简单就是输入研究主题,然后生成研究报告:因为之前开源的代码是英文的,我加了一个语言检测的小逻辑,用来判断是否使用中文提示语以及生成结果为中文。

修改之后的代码在这:https://github.com/yanqiangmiffy/Agent-Tutorials-ZH/blob/main/deep_research_agent/app.py

下面给大家分享一个执行的案例,

  • 生成报告结构:第一步生成报告的大纲目录以及每个部分的研究计划
  • 搜索与反思:第二步围绕每个章节搜索内容以及生成相关总结

  • 生成研究报告:基于上面研究结果生成最后报告内容

代码已放在:https://github.com/yanqiangmiffy/Agent-Tutorials-ZH/tree/main/deep_research_agent

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

https://img-blog.csdnimg.cn/img_convert/05840567e2912bcdcdda7b15cba33d93.jpeg

在这里插入图片描述

为什么要学习大模型?

我国在A大模型领域面临人才短缺,数量与质量均落后于发达国家。2023年,人才缺口已超百万,凸显培养不足。随着AI技术飞速发展,预计到2025年,这一缺口将急剧扩大至400万,严重制约我国AI产业的创新步伐。加强人才培养,优化教育体系,国际合作并进是破解困局、推动AI发展的关键。

在这里插入图片描述

在这里插入图片描述

大模型入门到实战全套学习大礼包

1、大模型系统化学习路线

作为学习AI大模型技术的新手,方向至关重要。 正确的学习路线可以为你节省时间,少走弯路;方向不对,努力白费。这里我给大家准备了一份最科学最系统的学习成长路线图和学习规划,带你从零基础入门到精通!

img


2、大模型学习书籍&文档

学习AI大模型离不开书籍文档,我精选了一系列大模型技术的书籍和学习文档(电子版),它们由领域内的顶尖专家撰写,内容全面、深入、详尽,为你学习大模型提供坚实的理论基础。

在这里插入图片描述

3、AI大模型最新行业报告

2025最新行业报告,针对不同行业的现状、趋势、问题、机会等进行系统地调研和评估,以了解哪些行业更适合引入大模型的技术和应用,以及在哪些方面可以发挥大模型的优势。

img

4、大模型项目实战&配套源码

学以致用,在项目实战中检验和巩固你所学到的知识,同时为你找工作就业和职业发展打下坚实的基础。

img

5、大模型大厂面试真题

面试不仅是技术的较量,更需要充分的准备。在你已经掌握了大模型技术之后,就需要开始准备面试,我精心整理了一份大模型面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余

img

适用人群

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范
第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署
第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建
第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

https://img-blog.csdnimg.cn/img_convert/05840567e2912bcdcdda7b15cba33d93.jpeg

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐