Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
56bcc8d
Update Translateion
Moemu May 5, 2025
c4fad99
Update course.zh.mdx
Moemu May 6, 2025
6ee1710
Update _meta.zh.json
Moemu May 6, 2025
8abb30b
Update meta
Moemu May 6, 2025
9382360
Update Translation
Moemu May 6, 2025
b090501
Supplement missing articles
Moemu May 7, 2025
0d0155a
Updating assets
Moemu May 7, 2025
6175d2a
Fixed error modified target file
Moemu May 7, 2025
6d89f05
Optimize wording
Moemu May 7, 2025
706d37d
Update `models` articles.
Moemu May 13, 2025
e12ca0d
fix link
Moemu May 13, 2025
6358139
remove raw text
Moemu May 13, 2025
dd8697b
Update Chinese Translation in `techniques` articles
Moemu May 14, 2025
b73e905
Update adversarial.zh.mdx
Moemu May 14, 2025
646c5ed
Update Chinese Translation in `research` articles
Moemu May 14, 2025
423b543
fix rag.zh.mdx
Moemu May 14, 2025
7d7c3fe
Update Chinese Translation in `agents` and `guides` folders
Moemu May 16, 2025
ff580d0
fixes
Moemu May 16, 2025
e67c3e3
fix link
Moemu May 16, 2025
e18dcbd
fix
Moemu May 16, 2025
ffb9e18
init
Moemu May 16, 2025
5a4d4b8
Update Translation
Moemu May 16, 2025
a9b29df
fix
Moemu May 16, 2025
3b447d8
Merge branch 'dair-ai:main' into main
Moemu Jun 1, 2025
118d18d
add deep-research.zh.mdx
Moemu Jun 1, 2025
1dba4f1
Merge branch 'dair-ai:main' into main
Moemu Jun 10, 2025
8e09752
add reasoning-llms-zh.mdx
Moemu Jun 23, 2025
4609097
init
Moemu May 16, 2025
3e8e946
Update Translation
Moemu May 16, 2025
03a03bf
fix
Moemu May 16, 2025
437e769
Merge branch 'prompts' of https://github.com/Moemu/Prompt-Engineering…
Moemu Jun 23, 2025
e946bf1
Restore .gitignore
Moemu Jun 23, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 35 additions & 2 deletions pages/_meta.zh.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,51 @@
"index": "提示工程指南",
"introduction": "提示工程简介",
"techniques": "提示技术",
"agents": "Agents",
"guides": "提示指南",
"applications": "提示应用",
"prompts": "Prompt Hub",
"models": "模型",
"risks": "风险和误用",
"research": "LLM Research Findings",
"research": "LLM 研究发现",
"papers": "论文",
"tools": "工具和库",
"notebooks": "Prompt Engineering 笔记本",
"notebooks": "Notebooks",
"datasets": "数据集",
"readings": "阅读推荐",
"courses":{
"title": "🎓 课程",
"type": "menu",
"items": {
"intro-prompt-engineering": {
"title": "提示工程简介",
"href": "https://dair-ai.thinkific.com/courses/introduction-prompt-engineering"
},
"advanced-prompt-engineering": {
"title": "高级提示工程",
"href": "https://dair-ai.thinkific.com/courses/advanced-prompt-engineering"
},
"intro-ai-agents": {
"title": "AI Agents简介",
"href": "https://dair-ai.thinkific.com/courses/introduction-building-ai-agents"
},
"rag-systems": {
"title": "构建RAG系统",
"href": "https://dair-ai.thinkific.com/courses/introduction-rag"
},
"advanced-agents": {
"title": "构建高级AI Agents",
"href": "https://dair-ai.thinkific.com/courses/advanced-ai-agents"
},
"all-courses": {
"title": "查看全部 →",
"href": "https://dair-ai.thinkific.com/pages/courses"
}
}
},
"about": {
"title": "关于",
"type": "page"
}
}

10 changes: 10 additions & 0 deletions pages/agents.zh.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Agents

import { Callout } from 'nextra/components'

在本节中,我们将概述语言代理,包括其定义、常见的设计模式、技巧和应用。

<Callout type= "info" emoji="🎓">
在我们新的结构化课程中学习构建代理,并提供示例和代码。[立即加入!](https://dair-ai.thinkific.com)
使用代码 PROMPTING20 可享受额外20%的折扣。
</Callout>
4 changes: 4 additions & 0 deletions pages/agents/_meta.zh.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"introduction": "Agent 简介",
"components": "Agent 组件"
}
53 changes: 53 additions & 0 deletions pages/agents/components.zh.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# Agent 组件

import { Callout } from 'nextra/components'

AI agent (agents)要有效应对复杂任务,需具备三项核心能力:规划能力 、工具使用能力 和 记忆管理能力 。下面我们将深入探讨这些组件如何协同工作以构建功能完备的 AI agent 。

![Agent 组件](../../img/agents/agent-components.png)

## 规划能力:Agent 的“大脑”

任何有效的 AI Agent 的核心都是其规划能力 ,而这一能力主要由大型语言模型(LLMs)驱动。现代 LLM 提供了若干关键的规划功能:

- 通过链式思维推理进行任务分解
- 对过往行为和信息进行自我反思
- 实现自适应学习以优化未来决策
- 对当前进展进行关键性分析

尽管目前 LLM 的规划能力尚不完美,但它们对于任务完成至关重要。缺乏强大的规划能力,Agent 将无法高效地自动化处理复杂任务,从而失去其存在的核心价值。

<Callout type= "info" emoji="🎓">
如需了解如何构建 AI Agent,请查看我们的新课程:[立即加入!](https://dair-ai.thinkific.com/courses/introduction-ai-agents)
使用优惠码 PROMPTING20 可额外享受 20% 折扣。
</Callout>

## 工具使用能力:拓展 Agent 的功能边界

第二项关键组件是 agent 与外部工具交互的能力。一个设计良好的 agent 不仅要能够访问各种工具,还必须理解在何时以及如何正确使用它们。常见的工具包括:

- 代码解释器与执行环境
- 网络搜索与爬取工具
- 数学计算引擎
- 图像生成系统

这些工具使 agent 能够执行其制定的计划,将抽象策略转化为具体结果。LLM 在理解何时选择何种工具方面的表现,对于高效处理复杂任务至关重要。

## 记忆系统:信息的存储与调用

第三项核心组件是记忆管理系统 ,主要包括两种形式:

1. 短期记忆(工作记忆)
- 充当即时上下文的缓冲区
- 支持上下文内学习(in-context learning)
- 足以应对大多数任务需求
- 有助于在任务迭代过程中保持连贯性
2. 长期记忆
- 通常通过外部向量存储系统实现
- 支持快速检索历史信息
- 对未来任务完成具有重要参考价值
- 当前实现较少,但在未来发展潜力巨大

记忆系统使 agent 能够存储并检索从外部工具中获取的信息,从而实现持续改进和知识积累 。

规划能力、工具使用能力和记忆系统之间的协同作用构成了有效 AI agent 的基础。虽然每个组件都有其当前的局限性,但了解这些核心功能对于开发和使用 AI agent 至关重要。随着技术的发展,我们可能会看到新的记忆类型和功能出现,但这三个支柱可能仍然是 AI agent 体系结构的基础。
50 changes: 50 additions & 0 deletions pages/agents/introduction.zh.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# Introduction to AI Agents

# AI Agent 简介

import { Callout } from 'nextra/components'

Agents(智能体) 正在彻底改变我们处理复杂任务的方式,它们利用大型语言模型(LLMs)的力量为我们工作并取得显著成果。在本指南中,我们将深入探讨 AI agent 的基础知识,探索其功能、设计模式和潜在应用。

## 什么是 Agent?

![Agent 组件](../../img/agents/agent-components.png)

在本指南中,我们将 Agent 定义为一种由 LLM 驱动的系统,旨在自主地采取行动并解决复杂任务。与传统的 LLMs 不同,AI agent 超越了简单的文本生成能力。它们具备额外的功能,包括:

* **规划与反思:** AI Agent 可以分析问题,将其分解为多个步骤,并根据新信息调整其方法。
* **工具访问:** 它们可以与外部工具和资源(如数据库、API 和软件应用程序)进行交互,以收集信息和执行操作。
* **记忆:** AI Agent 可以存储和检索信息,使其能够从过去的经验中学习并做出更明智的决策

本节将会讨论 AI Agent 的概念及其在人工智能领域的重要性。

## 为什么要使用 Agent ?

虽然大型语言模型(LLMs)在翻译或生成电子邮件等简单、狭窄的任务上表现出色,但在处理需要多步骤、规划和推理的复杂、广泛任务时却显得不足。这些复杂任务通常需要访问超出 LLM 本身知识库范围的外部工具和信息。

例如,制定营销策略可能涉及研究竞争对手、分析市场趋势以及访问公司特定数据。这些行动需要现实世界的信息、最新洞察和内部公司数据,而独立的LLM可能无法访问这些信息。

AI Agent 通过结合 LLMs 的功能和额外特性(如记忆、规划和外部工具)来弥合这一差距。

通过利用这些能力,AI Agent 可以有效地应对诸如以下复杂任务:

* 制定营销策略
* 策划活动
* 提供客户服务支持

<Callout type= "info" emoji="🎓">
在我们的新课程中了解如何构建 AI Agent。[立即加入!](https://dair-ai.thinkific.com/courses/introduction-ai-agents)
使用代码 PROMPTING20 可额外享受20%的折扣。
</Callout>

## AI Agent 的常见用例

以下是一些在工业界应用 Agent 的非详尽常见用例列表:

* **推荐系统:** 为产品、服务或内容提供个性化建议。
* **客户服务系统:** 处理咨询、解决问题和提供帮助。
* **研究:** 在法律、金融和健康等多个领域进行深入调查。
* **电子商务应用:** 促进在线购物体验,管理订单并提供个性化推荐。
* **预订:** 协助旅行安排和活动策划。
* **报告:** 分析大量数据并生成全面报告。
* **财务分析:** 分析市场趋势,评估财务数据,并以前所未有的速度和准确性生成报告。
2 changes: 2 additions & 0 deletions pages/applications.zh.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# 提示应用

import { Callout } from 'nextra-theme-docs'
import {Cards, Card} from 'nextra-theme-docs'
import {FilesIcon} from 'components/icons'
import ContentFileNames from 'components/ContentFileNames'


Expand Down
9 changes: 7 additions & 2 deletions pages/applications/_meta.zh.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
{
"finetuning-gpt4o": "GPT-4o 微调",
"function_calling": "函数调用",
"context-caching": "LLMs 上下文缓存机制研究",
"generating": "生成数据",
"coding": "Generating Code",
"synthetic_rag": "生成面向 RAG 的合成数据集",
"generating_textbooks": "处理合成数据集的多样性",
"coding": "代码生成",
"workplace_casestudy": "毕业生工作分类案例研究",
"pf": "提示函数"
}
}
4 changes: 2 additions & 2 deletions pages/applications/coding.zh.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import {Screenshot} from 'components/screenshot'
import CODE1 from '../../img/code-generation/chat-mode.png'

<Callout emoji="⚠️">
这个小节这在开发当中
此节仍尚在开发过程中。
</Callout>

像ChatGPT这种大语言模型对于生成代码是非常擅长的。在本节中,我们将给出一些示例来介绍如何使用ChatGPT进行代码生成:
Expand Down Expand Up @@ -193,4 +193,4 @@ WHERE departments.DepartmentName = 'Computer Science';
例子很快就来!

## 最佳实践
很快就来!
很快就来!
60 changes: 60 additions & 0 deletions pages/applications/context-caching.zh.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
# Gemini 1.5 Flash 中的上下文缓存技术

import {Cards, Card, Callout} from 'nextra-theme-docs'
import {CodeIcon} from 'components/icons'

Google 最近推出了一个名为 [上下文缓存(Context Caching)](https://ai.google.dev/gemini-api/docs/caching?lang=python) 的新特性,并通过 Gemini API 在 Gemini 1.5 Pro 和 Gemini 1.5 Flash 上提供。本节将通过一个使用 Gemini 1.5 Flash 的基础示例来演示如何使用该创新技术。

<iframe width="100%"
height="415px"
src="https://www.youtube.com/embed/987Pd89EDPs?si=j43isgNb0uwH5AeI" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowFullScreen
/>


https://youtu.be/987Pd89EDPs?si=j43isgNb0uwH5AeI

### 应用场景: 年度机器学习论文分析

本指南演示了如何使用上下文缓存来分析 [我们在过去一年中记录的所有机器学习论文](https://github.com/dair-ai/ML-Papers-of-the-Week) 的摘要。我们将这些摘要存储在文本文件中,并可以将其输入 Gemini 1.5 Flash 中进行高效查询。

### 实现流程:上传、缓存与交互

1. **数据预处理:** 将 README 文件(包含论文摘要)转换为纯文本格式。
2. **与 Gemini API 集成:** 使用 Google `generativeai` 库完成文本文件上传。
3. **上下文缓存构建:** 通过 `caching.CachedContent.create()` 函数以创建缓存,需配置:
* 指定 Gemini Flash 1.5 模型.
* 为缓存定义一个名称标识.
* 定义模型的指令 (e.g., "您是一个 AI 研究专家...").
* 设置缓存的生存期 (TTL) (e.g., 15 分钟).
4. **创建模型:** 使用缓存内容创建一个生成式模型实例。
5. **查询:** 现在可以使用自然语言与模型进行交互式查询:
* "你能列出最新一期的 AI 论文周报吗?"
* "你可不可以列举提及Mamba架构的论文?要求包含标题和摘要"
* "长上下文LLM领域的创新有哪些?请提供论文标题和摘要"

最终,模型生成的结果令人欣慰,表明模型能准确检索并总结文本文件中的内容。通过上下文缓存技术能够显著提升效率,无需重复传输完整文档,从而有效降低单次 API 查询成本。

这一工作流程存在潜力来成为研究人员的宝贵工具,使他们能够:

* 快速分析和查询大量研究数据。
* 检索特定结果而无需手动搜索文档。
* 开展互动研究对话而无需浪费Prompt Token。

我们很高兴能够进一步探索上下文缓存的应用,尤其是在代理工作流等更为复杂的场景中。


本节中的 notebook 可在下面找到:

<Cards>
<Card
icon={<CodeIcon />}
title="使用 Gemini APIs 进行上下文缓存"
href="https://github.com/dair-ai/Prompt-Engineering-Guide/blob/main/notebooks/gemini-context-caching.ipynb"
/>
</Cards>

<Callout type= "info" emoji="🎓">
了解我们最新推出的人工智能课程中关于高级提示工程技术与最佳实践的内容。 [立即加入!](https://dair-ai.thinkific.com/)
使用优惠码 PROMPTING20 可额外享受 20% 折扣优惠。
</Callout>
38 changes: 38 additions & 0 deletions pages/applications/finetuning-gpt4o.zh.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# 使用 GPT-4o 模型进行微调

import { Callout } from 'nextra/components'

OpenAI 最近 [宣布](https://openai.com/index/gpt-4o-fine-tuning/) 其最新模型 GPT-4o 和 GPT-4o mini 已支持微调功能。这一新特性使得开发者能够针对特定应用场景对 GPT-4o 模型进行定制,从而提升性能并适配输出结果。

## 微调细节与成本

开发者现在可通过专门的 [微调仪表盘](https://platform.openai.com/finetune) 访问 `GPT-4o-2024-08-06` checkpoint 以进行微调。该过程允许用户自定义响应结构、语气,并遵循复杂领域中的特定指令。

对 GPT-4o 进行微调的成本为每百万个训练令牌 25 美元,每百万个推理输入令牌 3.75 美元,每百万个输出令牌 15 美元。此功能仅限于付费使用层级的开发者使用。

## 用于实验的免费训练令牌

为了鼓励探索这一新功能,OpenAI 正在提供限时优惠活动,截止日期为 2024 年 9 月 23 日。开发者每天可获得 100 万个用于 GPT-4o 的免费训练令牌和 200 万个用于 GPT-4o mini 的免费训练令牌,为实验和发现微调模型的创新应用提供了良好机会。

## 应用场景:情绪分类

<iframe width="100%"
height="415px"
src="https://www.youtube.com/embed/UJ7ry7Qp2Js?si=ZU3K0ZVNfQjnlZgo" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowFullScreen
/>

在上述指南中,我们通过一个实际的微调示例,训练了一个用于情绪分类的模型。借助一个包含情绪标签的文本样本的 [JSONL 格式数据集](https://github.com/dair-ai/datasets/tree/main/openai) ,GPT-4o mini 可被微调成根据情感语气的文本情感分类器。

该示例突显了微调技术在提升模型在特定任务中的性能方面的潜力,相比于标准模型,微调后的模型在准确性方面实现了显著改进。

## 访问与评估微调模型

一旦完成微调过程,开发者可以通过 OpenAI playground 访问和评估其自定义模型。playground 支持与各种输入进行交互测试,并提供有关模型性能的见解。对于更全面的评估,开发者可以将微调后的模型集成到其应用程序中,通过 OpenAI API 进行系统性测试。

OpenAI 引入 GPT-4o 模型的微调功能,为希望利用大型语言模型 (LLM) 执行特定任务的开发者解锁了新的可能性。

<Callout type= "info" emoji="🎓">
了解我们最新推出的人工智能课程中关于高级提示工程技术与最佳实践的内容。 [立即加入!](https://dair-ai.thinkific.com/)
使用优惠码 PROMPTING20 可额外享受 20% 折扣优惠。
</Callout>
53 changes: 51 additions & 2 deletions pages/applications/function_calling.zh.mdx
Original file line number Diff line number Diff line change
@@ -1,7 +1,17 @@
# 在LLM中调用函数

import {Cards, Card, Callout} from 'nextra-theme-docs'
import {CodeIcon} from 'components/icons'

## 调用函数

<iframe width="100%"
height="415px"
src="https://www.youtube.com/embed/p0I-hwZSWMs?si=tQgi-LiHe6Oj_rzm" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowFullScreen
/>


函数调用是指可靠地连接LLM与外部工具的能力。让用户能够使用高效的外部工具、与外部API进行交互。

GPT-4和GPT-3.5是经过微调的LLM,能够检测函数是否被调用,随后输出包含调用函数参数的JSON。通过这一过程被调用的函数能够作为工具添加到您的AI应用中,并且您可以在单个请求中定义多个函数。
Expand Down Expand Up @@ -73,6 +83,7 @@ def get_completion(messages, model="gpt-3.5-turbo-1106", temperature=0, max_toke
```

您可以像这样构造用户提问:

```python
messages = [
{
Expand All @@ -98,10 +109,48 @@ ChatCompletionMessage(content=None, role='assistant', function_call=None, tool_c

然后您可以调用一个外部天气API来获取实际的天气信息。一旦您有了天气信息,就可以将其传回模型,随后根据原始用户问题总结出最终回应。

这里有一个[python notebook](https://github.com/dair-ai/Prompt-Engineering-Guide/blob/main/notebooks/pe-function-calling.ipynb),它提供了一个简单示例,展示了如何使用OpenAI API进行函数调用。
## Notebooks

<Callout type= "info" emoji="🎓">
了解我们最新推出的人工智能课程中关于高级提示工程技术与最佳实践的内容。[立即加入!](https://dair-ai.thinkific.com/)
使用优惠码 PROMPTING20 可额外享受 20% 折扣优惠。
</Callout>

这里有一个[python notebook](https://github.com/dair-ai/Prompt-Engineering-Guide/blob/main/notebooks/pe-function-calling.ipynb) 提供了一个简单示例,展示了如何使用 OpenAI API 进行函数调用。

<Cards>
<Card
icon={<CodeIcon />}
title="使用 OpenAI APIs 进行函数调用"
href="https://github.com/dair-ai/Prompt-Engineering-Guide/blob/main/notebooks/pe-function-calling.ipynb"
/>
</Cards>


## 使用开源LLM进行函数调用
更多使用开源LLM进行函数调用的说明即将推出...

## 函数调用用例
更多函数调用用例即将推出...

以下是函数调用能力在大语言模型(LLMs)中可带来显著益处的典型应用场景:

- **对话代理系统**: 函数调用机制可用于构建复杂的对话代理或聊天机器人,使其能够通过调用外部 API 或知识库处理复杂查询,从而生成更具相关性与实用性的响应。

- **自然语言理解**: 可将自然语言转换为结构化的 JSON 数据,或从文本中提取结构化信息。被广泛应用于命名实体识别、情感分析及关键词提取等任务中。

- **数学问题求解**: 支持定义涵盖多种类型高阶计算的自定义函数以分步骤求解复杂数学问题,提升语言模型在数学推理方面的能力。

- **API 集成**: 函数调用有助于将大语言模型与外部 API 高效集成,模型根据输入生成有效的 API 请求,从而实现信息检索、自动问答或创意协助等功能。

- **信息抽取**: 从给定输入中提取特定信息,如从文章中获取相关新闻条目或参考资料,提升模型的实用性与精准性。


## 参考文献
- [Fireworks Raises the Quality Bar with Function Calling Model and API Release](https://blog.fireworks.ai/fireworks-raises-the-quality-bar-with-function-calling-model-and-api-release-e7f49d1e98e9)
- [Benchmarking Agent Tool Use and Function Calling](https://blog.langchain.dev/benchmarking-agent-tool-use/)
- [Function Calling](https://ai.google.dev/docs/function_calling)
- [Interacting with APIs](https://python.langchain.com/docs/use_cases/apis)
- [OpenAI's Function Calling](https://platform.openai.com/docs/guides/function-calling)
- [How to call functions with chat models](https://cookbook.openai.com/examples/how_to_call_functions_with_chat_models)
- [Pushing ChatGPT's Structured Data Support To Its Limits](https://minimaxir.com/2023/12/chatgpt-structured-data/)
- [Math Problem Solving with Function Calling](https://github.com/svpino/openai-function-calling/blob/main/sample.ipynb)
Loading