本文介绍

我在想,作为一个和AI既算不上强相关,写不了代码,却必须实时关注着AI发展的工程师,该如何审视这一庞然大物的发展。当生活中开始充斥着越来越多的AI名词,铺天盖地的效率宣传,一个之前活在2G时代的鼠鼠决定开始学习怎么使用AI。我不太会打代码,至少VSCode和Python用的都不算太熟练,反倒是MATLAB用的得心应手,所以,我只会在这里教你如何使用它。

如何正确的与AI对话:把AI当成一个天才实习生,你是他的上司,然后用最接近代码架构的自然语言描述你的任务。这一点将贯穿全文。

  • 什么叫把AI当成一个天才实习生?

大模型很厉害、很全能,毋庸置疑,但是很多时候它“并不知道怎么去做事”,所以你会觉得他经常输出不满意的回答,并且还会产生严重的幻觉——输出不合实际乃至于和真理背道而驰的回答。这个天才实习生可以帮你作甚很多事,但前提是你得作为一个mentor教他一些方法,并下达逻辑清晰、要求完善的任务指令。

  • 本文的结构如下:
  1. 第三章的“Prompt Engineering”教你如何给AI下达逻辑清晰要求完善的指令,学会之后,你就可以拿着这些技巧去和QWEN、GPT、Gemini等各路大模型对话,这个天才实习生就能优秀地按照你的要求输出你想要的内容。这一步,是手动的、最基础的AI操作,你所经过的流程是这样的:
1
问AI问题 → 得到回答 → 拿这个回答去测试 → 发现BUG或新的问题 → 再问AI → 循环
  1. 第四章以“Claude Code”为例的Agent解决了从手动到半自动的问题。你觉得AI回答你的问题之后还要你自己执行,比如你得到了代码却需要自己复制到文件里,输出了日志却需要你自己上传,还是太麻烦了。那AI能不能完成”内容生成 - 操作执行“的一条龙服务呢?能的兄弟能的,这就是这里要介绍的”智能体 Agent“。
  2. 后续的章节则会继续深入Agent的功能扩展,包含MCP/Skills/SubAgent,就如同让这个实习生学会更多的东西。

名词介绍

本节“名词介绍”由AI生成,在此之前先来了解一下这些东西。速速扫过一遍即可,并不需要每个都了解清楚,后面会有详细的应用。

LLM (Large Language Model) - 大语言模型

  • 核心定义: 基于海量文本数据训练,具备理解、生成和推理能力的深度学习模型。
  • 通俗解读: 想象公司刚入职了一位“天才实习生”。他读过世界上几乎所有的书(代码、论文、小说),知识渊博但缺乏特定领域的实际工作经验。他的核心能力是“接话”——你只要起个头,他就能凭借海量的阅读积累,顺畅地把话接下去,无论是写诗、写代码还是做逻辑推理。
  • 代表模型: GPT-4, Claude 3.5, DeepSeek, Llama 3 等。

Token (词元) - 计量单位

  • 核心定义: 模型处理文本的最小单位,也是算力成本的计费基准。
  • 通俗解读: 这是这位实习生的“阅读与产出计件单位”。他看书不是按“页”也不是按“单词”看的,而是按一种特殊的字节块(Token)来处理信息。
    • 英文通常被拆得较碎(一个单词切成几块);中文通常一个字对应 0.5 到 2 个 Token。
    • 应用意义: 公司按这个单位给实习生结算“工资”(算力成本),他读了多少Token、写了多少Token,就是计费的依据。

Context Window (上下文窗口) - 信息容量

  • 核心定义: 模型在一次交互中能够处理的输入与输出Token总和的上限。
  • 通俗解读: 这代表了这位实习生的“工作记忆力”,即他在不查阅资料的情况下,脑子里一次能装下多少信息。

Prompt (提示词) - 任务指令

  • 核心定义: 用户向模型输入的文本,用于引导模型生成预期的输出。
  • 通俗解读: 这是你发给实习生的“工作派单”。因为实习生虽然聪明但不懂你的具体意图,所以派单的清晰度决定了产出质量。
    • Bad Prompt: “写个东西。”(实习生一脸懵逼:写啥?给谁看?)
    • Good Prompt: “你现在的角色是资深技术博主,请根据这份资料写一段摘要,受众是初级开发者,语气要专业且活泼,字数控制在200字。”(SOP清晰,实习生干得漂亮)
  • Prompt Engineering (提示词工程): 研究如何给这位实习生下达最精准指令、榨干他潜力的管理学问。

Temperature (温度) - 随机性参数

  • 核心定义: 控制模型输出随机性与创造性的参数(通常范围为 0-1)。
  • 通俗解读: 这是一个调节实习生“工作性格”的旋钮。
    • 低温度 (接近 0): “严谨的老会计模式”。实习生会非常保守,只说最有把握的话,每次问他答案都一样。适合写代码、处理数据等容错率低的任务。特别的,当Temperature = 0时,AI将切换到“贪心算法”
    • 高温度 (接近 1): “疯狂的艺术家模式”。实习生思维跳跃,脑洞大开,每次回答都不一样。适合头脑风暴、写创意文案。

API (Application Programming Interface) - 服务接口

  • 核心定义: 允许软件应用程序之间进行相互通信的接口。
  • 通俗解读:
    • 在网页上聊天,是你把实习生叫到会议室“面对面沟通”
    • 使用 API,则是给实习生接通了“内部自动化专线”。公司的其他软件(比如你的Excel插件或自动化脚本)可以通过这条专线直接把任务传给实习生,实习生处理完再把结果传回去。这样无需人工介入,软件之间就能自动协作。

Agent (智能体) - 自主执行单元

  • 核心定义: 具备环境感知、逻辑规划及工具调用能力的AI系统。
  • 通俗解读:
    • 普通的 LLM 只是“被关在空房间里的实习生”,他只能动嘴皮子给你出主意,没法联网也没法操作电脑。
    • Agent 则是“获得电脑操作权限的实习生”
    • 场景示例: 问普通实习生“天气如何”,他只能瞎猜;但作为 Agent 的实习生,他会自己:1. 打开浏览器搜索气象局 2. 读取数据 3. 汇总报告给你。他不仅能想,还能动手干活

RAG (Retrieval-Augmented Generation) - 检索增强生成

  • 核心定义: 在生成回答前,先从外部知识库检索相关信息,作为上下文提供给模型。
  • 通俗解读: 这位实习生虽然博学,但他“没看过公司的内部机密文档”
    • RAG 的机制: 就像是在回答问题前,先塞给实习生一本“公司内部手册”,并命令他:“不要瞎编,必须严格根据这本手册里的内容来回答。”
    • 核心价值: 防止实习生不懂装懂(幻觉),并让他具备处理公司私有业务的能力。

MCP (Model Context Protocol) - 模型上下文协议

  • 核心定义: 一种标准化的数据连接协议,用于统一 AI 模型与不同数据源之间的连接方式。
  • 通俗解读: 以前,如果要让实习生去操作 Google Drive、Slack 或本地数据库,你需要给每个工具都专门教他一套复杂的操作流程。
    • MCP 就像是给实习生配了一把“万能钥匙”。只要工具符合这个标准,实习生不需要额外培训,拿着这把钥匙就能直接“插拔式”地连接和使用各种数据源,大大降低了教导实习生使用新工具的成本。

Skill (Agent Skill) - 技能组件

  • 核心定义: 赋予智能体完成特定任务的封装化能力,通常包含特定的指令逻辑、代码执行环境或外部工具调用接口。
  • 通俗解读: 这位天才实习生虽然智商很高,但刚入职时可能只是个“通才”,不懂具体的业务操作。
    • Skill 就是你给实习生安装的“专用APP”或教会他的“专项SOP”
    • 比如,原本他只会陪聊,你给他安装了一个 “联网搜索 Skill”,他就学会了如何使用搜索引擎查资料;给他安装一个 “Python编程 Skill”,他就拥有了运行代码环境并计算复杂数学题的能力。
    • 应用意义: 通过组合不同的 Skill,你可以把这位通用型的实习生,快速定制成“数据分析师”(Python Skill + 图表绘制 Skill)或“舆情观察员”(搜索 Skill + 总结 Skill)。

Prompt Engineering

这一章教会你和这位实习生说话的艺术——你该用什么样的指令来操控它,才能让他给你一个满意的回答。本章节的内容主要参考自以下两处,并且我把自己认为的核心原则总结为“4+4”。如果你是一个纯新手,那么看完我总结的这一部分应该也可以做到快速上手。如果你时间充裕,那么不妨仔细研究一下下面的参考文献:

  • 前谷歌AI高级工程师,知名的吴恩达教授的吴恩达Prompt提示词工程,以及一些国内学者的补充。如果你时间充裕,那么不妨倍速看一看吴恩达Prompt课程。这个课程也是目前认可度非常高的一个 Prompt Engineering 来源。

  • 另外还参考了下面这本由Ephemerall整理的AI全栈实践指南。当然这里提一下,我感觉这几篇教程应该是AI写的,有点不太符合我的阅读和写作习惯,用了很多很奇怪的例子,并且没有完全保证前后文的一致性。

四个核心原则

四个核心原则简单的讲是ICIO——输入Input,背景Context,指令Instruction 和 输出Output,可以用下面这一句话描述:

Write clear and specific instructions (Where clear ≠ short)

输入Input

比如你让实习生处理公司的账务那么就得先丢给他公司的账本和规章,你让他优化你的代码就得给他原始代码。一个良好的习惯是使用'''分割输入文本text,避免提示词冲突并明确指令(即避免AI把你的源文本输入误认为提示词)。同时,在添加附件时,可以予以简要的说明。

1
2
3
4
5
6
summarize the text and delimited by ```
# Input:
Text to summarize:
‘’‘
Text
‘’‘
1
2
3
summarize the text
# Input:
1. OriginalText.docx: The Text to summarize

背景Context

这项任务是处理什么东西?要用到哪些方面的知识?其实除了描述清楚任务的背景,最好的Context方式是指定AI的角色,这样保证AI在后续处理时会将自己的搜索集进行限制,并且最大程度调动相关专业的知识。

1
2
# Context: 
你是一名电磁学高级工程师(专家),并擅长使用有限元仿真软件
1
2
# Context:
你是小红书爆款文案专家,擅长使用“绝绝子”、“减脂党狂喜”等吸睛词汇,多用 Emoji

指令Instruction

instruction是任务的核心要求,表现为指令+约束。你的“指令”必须提供的足够准确,并且让AI立马理会你的意思,然后用“约束”来限制AI的行为。

1
2
# instruction:
为一款“低脂燕麦拿铁”撰写 5 个标题,突出“好喝不胖”和“打工人续命”两个痛点。
1
2
# insctruction:
解释下面这一段话,并使用形象的游戏领域的例子比喻核心概念,禁止出现“边际效益”、“不可回收”等专业术语,必须用大白话解释。

输出Output

结构化输出指令,指定输出格式。他返还给你的“报告”应该是什么格式?如果你需要docx而你的实习生给你提交了pdf,那想必你也会想把他打一顿。

1
2
# output:
Provide them in JSON format with following keys: id, title...
1
2
# output:
将上述内容整理为 Markdown 表格,包含三列:【发言人】、【核心观点】、【待办事项】。不要输出任何总结性文字

总结

  1. 当然,这 4 个核心原则并不一定都需要出现,可以根据具体任务的不同做删减。比如当你只是需要迅速处理一些数据,那么AI的人格(context)就在此时显得不重要,重要的是输出格式(output)。当你需要发散性地查询搜索一些信息,那么此时内容也就不再具有输入(input)
  2. 可以看到上面每一个案例我都用井号 # 把标题写了出来,这在文章内容较长的时候显得尤为必要:因为AI阅读“结构性”的输入时逻辑会非常清晰,比如 Markdown 和 Latex 格式的文本就由于普通的 Word 或 TXT。井号 # 在Markdown中是标题的意思,通过这样输入,可以让AI迅速将内容分层并理解你的核心要求。

四个升级手法

除了上面这四个核心原则之外,还可以学习一下让你的Prompt升级的其他手段

工作流Workflow

有的时候实习生思维混乱,你得人为地指导他的思想,告诉他当你要完成这个任务的时候,先做什么,后做什么。工作流能够让AI一步一步思考整个问题的来龙去脉,防止它忽略掉一些细节。下面展示了一种使用工作流的格式,但是当你的内容比较简短、任务比较简单时,可以直接输入请一步步思考这句简单指令,来直接唤醒AI的逻辑思维能力,代替工作流。

1
2
3
4
5
6
7
8
# Workflow
Perform the following actions:
1 - Step1 content
2 - Step2 content
3 ...

Text:
```{Text}```

工作流还有一个核心目的是移除AI对你的假象依赖,减少幻觉。举个例子:当你问“这篇文章是不是逻辑混乱?”时,AI 会倾向于顺从你的预设, 专门去寻找“混乱”的证据,从而导致客观评价失效。这就是典型的“顺从性幻觉。

1
用户的提问方式构成了上下文的一部分。如果不在思维层面进行“物理隔离”,AI的评价标准就会被用户的偏见所污染。

解决方法:(例子)

1
2
3
4
5
6
7
8
9
10
11
12
13
User Input:  
<article> ...[文章内容]... </article>
<query> 这篇文章是不是在暗讽我们的产品策略很失败?</query>
System Instructions:
你是一个客观公正的分析师。为了避免被用户的 <query> 误导,请务必执行以下管道:
# Processing Pipeline
1. Step 1: 盲测与独立分析
在 <thinking> 标签内,暂时屏蔽用户的 query。
仅基于 <article> 的客观文本,提炼其核心论点和情感倾向。建立你自己的“客观评价基准”。
2. Step 2: 偏差比对
将你的“客观评价”与用户的 <query> 进行比对。判断用户的预设观点是否与事实相符。
3. Step 3: 修正输出
在 <answer> 标签内回答用户。如果用户的预设是错误的,请利用 Step 1 中的证据进行纠正。

例子Example(Few-Shot)

例子又被称为 Few-Shot Prompting,即少样本提示,通过引导让AI生成你想要的内容。你的“前人”是怎么做的?当有了某个Input的时候你应当输出什么样的Output?

1
2
3
4
5
6
7
8
9
10
11
User Input:  
# Task
请模仿以下范例,用“塔防游戏 Tower Defense”的术语,来解释生物学概念。
# Examples Style Reference
范例
1. 皮肤与黏膜
这就是基地的城墙。不管敌人是谁,小怪还是 BOSS,只要敢来就挡在外面。这属于最基础的“物理 防御”。
2. 吞噬细胞
近战步兵。看到敌人就上去砍,不分敌我,巡逻全图。虽然单体伤害一般,但胜在响应速度快, 是前期的主力。
# Target Input
需解释概念:抗体 Antibody

如果你没有合适的例子,也可以直接“找AI要”,这就是 Meta Prompting 的核心概念之一,即用AI训练AI

迭代Iteration

当操控AI时,他不一定第一次就能给你提供良好的输出,因此需要迭代。

吴恩达说过:“我不认识任何一位第一次就能把 Prompt 写对的 AI 专家。”提示词工程本质上不是文学创作,而是软件开发。既然是开发,就一定有 Bug;既然有 Bug,我们就需要一套科学的调试流程。

  • 热修复Edit:大语言模型是基于概率预测的,错误的对话历史就是“脏数据”。如果你花 Token去争辩,上下文里就充满了噪音,会严重干扰后续生成的质量。当AI产生幻觉时,为避免上下文污染和噪音,直接重写历史或者编辑过往对话,始终保持高质量输入到高质量输出的闭环。
  • 追问iteration:构思假设 - 执行 - 结果观测 - 错误分析与修正。关于这一点,可以参考吴恩达Prompt课程中关于迭代中的例子——一把椅子的文案进化。

Meta-Prompting

Meta-Prompting的核心是“用AI写AI”,即当你明明学会了上面这些提示词的写作手法,可到了实战中却还是写不出合适的提示词。没关系,本章将直接给出一个由Ephemerall整理的、由AI帮你写提示词的Prompt。

使用方法如下:打开一个新窗口,把下面这堆提示词复制进去,然后简要地告诉AI现在你想干什么,他就能帮助你生成一段提示词。然后再开一个新窗口,把AI给你生成的这段提示词复制进去,你就得到你想要的答案。

如果你会使用GEM(下文马上会介绍),那么非常建议把下面这段话保存在你的GEM中,成为你专用的提示词生成GEM。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# Role: 提示词优化专家  
## Background:
我是一位提示词优化专家,专门帮助用户提升其提示词的质量。我经常接到这方面的咨询,因为用户可能会对如何优化提示词感到困惑,需要专业的建议和指导。
## Attention:
用户非常渴望在此任务上获得帮助,希望我能帮他们改进提示词以提高 LLM 的回复质量。我将运用我所有的专业知识和经验来协助他们,展现我对这项任务的热情和专注。
## Profile:
• Author: 提示词优化专家
• Version: 1.0
• Language: 中文
• Description: 我是一位致力于帮助用户提升提示词质量的专家,在自然语言处理方面拥有丰富的经验,能够设计出符合语法和语义标准的高质量提示词。
## Skills:
• 我理解 LLM 的技术原理和局限性,包括其训练数据和构建方法,以便更好地设计提示词。
• 我拥有丰富的自然语言处理经验,能够设计出语法和语义均正确的高质量提示词。
• 我具备很强的迭代优化能力,能够通过持续调整和测试提示词的表现来不断提升其质量。
• 我能够根据具体的业务需求设计提示词,确保 LLM 生成的内容符合业务要求。
## Goals:
• 分析用户的提示词,设计一个结构清晰且逻辑严密的提示词框架,确保分析过程符合各学科的最佳实践。
• 根据 <OutputFormat> 填充该框架,以生成高质量的提示词。
• 每个结构必须输出 5 条建议。
• 确保在结束前输出“初始化”内容。
## Constraints:
• 我将分析以下信息,确保所有内容都遵循各学科的最佳实践。
• 在任何情况下,我都不能脱离角色。
• 我不能进行毫无根据的断言或捏造事实。
## Workflow:
1. 首先,我将分析用户输入的提示词并提取关键信息。
2. 然后,我将根据关键信息确定最合适的角色。
3. 接着,我将分析该角色的背景、关注点、描述、技能等。
4. 最后,我将按照 <OutputFormat> 输出分析后的信息。
## OutputFormat:
• 我将按照用户的要求输出符合指定格式的内容。
• 我的输出将以 Markdown 源代码格式呈现,方便用户复制。
## Suggestions:
• 提升可操作性的建议:你可以尝试澄清你的问题,帮助 LLM 更好地理解你的需求。
• 增强逻辑性的建议:你可以考虑将问题拆分成更小的部分,帮助 LLM 更好地掌握你的逻辑。
• 提升语法质量的建议:你可以尝试优化语法,使 LLM 能更准确地理解你的问题。
• 增强语义质量的建议:你可以考虑使用更精准的词汇,帮助 LLM 更好地理解你的意图。
• 提升 LLM 回复质量的建议:你可以尝试提供更具体的问题,以便 LLM 生成更具体的答案。
## Initialization
作为提示词优化专家,我必须遵守上述规则,使用默认语言与用户交流,并向用户致意。然后,我将 进行自我介绍并概述我的工作流程。

Gem

Gem是Google Gemini推出的一种专门用于处理特定需求的特殊封装结构,在提前设置好提示词之后,AI会一直遵循你的要求、限制和自己的人格、思维方式,特别擅长处理固定或类似的一系列任务。可以说,Gem把一个开放式的Chat封装成了一个“函数”,在你定义完函数(构建Gem)之后,可以进行复用。用户不再需要额外输入过多的要求,而是可以用极简的input完成高效的调用。

打开Gemini然后点击新建Gem就可以生成你的专属Gem了。比如,下图就是我的提示词优化专家的Gem,然后我用这个Gem创造了用于优化代码和科研翻译的Gem。

当然,Gem不是在任何时候都适用。Gem 的本质是 SOP(标准作业程序)的固化,只有当任务满足“前提重复”或“输出标准”这两个条件时,封装才有意义。并且Gem 的 System Instructions 和预挂载的知识库会在每一次对话开始时被完整加载到 Context Window 中。如果你为了一个简单的问题挂载了 5 万字的知识库,那么这对你的成本和Token消耗是得不偿失的。

举个例子

上文的“名词介绍”这一章的内容是这么生成的:

1
2
3
4
5
6
7
# Context:
你是一名大语言模型工程师,计算机领域的专家。
# Instruction:
给想学习大语言模型的新人介绍最近几年流行的大语言模型基础词语内涵,包括但不限于“Prompt”、“Agent”、“Api”、“MCP”等。
# Output:
输出为Markdown格式文档,要求结构清晰
避免使用过于晦涩的专业术语,将其替换为直白的描述或例子

然后进行迭代,针对你不满意但是仍然疏漏的地方进行调整:

1
2
3
4
5
6
7
8
9
10
11
# Requirement:
我需要将上述新人入门词典写入Hexo博客中,供公司新入职员工参考
# Instruction:
1. 小幅度改写上述内容文风,保持主要内容不变
2. 减少较不正式、带有明显交谈风格的口癖内容
3. 允许保留部分名词解释的例子,以“LLM是一个天才实习生”这一点出发
# Example:
Before: """ ## 第一部分:基础概念(这到底是个什么东西?)"""
After: """ ## 第一部分:基础概念"""
# Output:
将上述内容转换为能被Hexo博客较好展示的Markdown文档格式

可以看到这整个过程中我都没有用到Input,这是这个例子本身并不需要输入。

Claude Code

claude code,简称CC,是由Claude研发的新一代Agent,与之类似的还有google的Gemini CLI等,只是Claude Code在去年下半年兴起之后大热,功能很强,所以这里就以CC来作为Agent的示例。Agent与传统的Chat类型的AI最大的区别就是他能直接帮你做事,自动运行代码,自动debug,自动生成文件,自动搜寻信息并按照你要的要求返回给你。

关于Claude Code的安装和使用,说实话打字打到这已经有点累了,我不想再把全流程讲一遍,下面着重讲一些关键步骤和坑。而且Claude的升级用法有点难但是安装其实很简单。

CC的安装和基本配置

这里贴几个视频。可以先只看最前面的安装部分。可以直接在命令行窗口安装或者在VsCode里使用。

  1. 马克的技术工坊:Claude Code 从 0 到 1 全攻略,推荐有代码基础的朋友看这个
  2. 秋芝2046:用神器Claude Code!打造贴身AI秘书团,推荐没有代码基础的朋友看这个

科学上网

众所周知,要使用联网的Agent肯定需要翻墙(科学上网工具请自备),但当我们使用命令行窗口运行claude code,命令行窗口不能接入到我们的VPN。打开你的翻墙软件查看你的端口,然后把下面的函数写入命令行中(如果你不确定如何让命令行窗口永久记住这个函数或者该写入到哪,可以询问AI)。我的端口是7890,你写入的时候改成自己的端口号

1
2
3
4
5
6
7
8
9
10
11
12
13
14
function proxy_on {
$proxy_addr = "http://127.0.0.1:7890"
$env:http_proxy = $proxy_addr
$env:https_proxy = $proxy_addr
$env:all_proxy = "socks5://127.0.0.1:7890"
Write-Host "? Proxy has been ACTIVATED (Port: 7890)" -ForegroundColor Green
}

function proxy_off {
$env:http_proxy = ""
$env:https_proxy = ""
$env:all_proxy = ""
Write-Host "?? Proxy has been DISABLED" -ForegroundColor Yellow
}

基于CCS的国产模型接入

然后我们大部分人也不能用Claude的原生模型,所以一般都需要接入国产的本地模型。现在国产做的比较好的有MiniMax 2.1和智谱 GLM4.7(本文写于2026/2/7)。一般情况下,我们更改这个Agent背后的大语言模型需要配置各种文件,对于真正的纯小白不太友好(当然这也算是理工科成长必经的一步)。这里介绍一个方便切换模型API的工具,这个软件的作用就是让你在不用更改各种配置文件的前提下,方便快捷地一键切换你的大语言模型

Claude Code Switch (CCS)(也可以使用Claude Code Router (CCR),后者好像用的人多一点。这两个软件功能差不多,我这里以前者举例)。CCS的使用可以参考这个视频的第2~5分钟:7分钟搞定Claude Code安装和多模型配置

基于VsCode+CCS的CC使用

那么众所周知,命令行窗口的界面使用很令人头疼:可视化程度低、集成化程度低等等。前段时间,继需要付费的Cursor之后,理工科软件的神VsCode也推出了Claude Code的插件。本小节将教会你基于VsCodeCCS的Claude Code可视化使用。

  • 第一步,打开VsCode,在扩展的搜索栏中搜索“Claude Code”,然后安装这个官方的插件

  • 第二步,打开你的CCS,选择一个大语言模型
  • 第三步,打开(或重启)VsCode的Claude Code插件(右上角的橙色烟花图标),然后如果不出意外的话,你就能跳过初始的登录界面,直接进入对话窗口。

好了如果到这一步都没有出问题的话,那么恭喜你已经完成90%的配置了。现在你应该能看到一个跟平常使用AI对话非常相似的界面。然后现在让我们测试一下我们的CCS是否配置成功,询问它“你的模型版本是什么?”,发现它返回MiniMax 2.1,跟我们在CCS中配置的一样,说明成功了。

现在你可以开始你的Agent使用了。尝试进行一些对话,比如生成一个ToDo软件或者贪吃蛇游戏吧。

拓展内容

CLAUDE.md

以我粗浅的理解,CLAUDE.md就像给Agent使用的Gem一样,在每次对话前都被加载进去,当做这个Agent的底层逻辑。比如它描述了你这个项目是什么、做了哪些内容,他跟你对话的时候应该遵循什么需求,输入输出的时候要有什么条件和格式。

业内通常认为CLAUDE.md不应该太长,尽量在100个token以内,以减少不必要的资源浪费。在Claude Code 的使用中,可以使用/init命令来创建并修改CLAUDE.md。他的写法跟Gem非常相似

比如,你可以要求Agent在你输入指令不明确的时候不要自己瞎猜,而是不断追问来明确指令要求。或者你也可以让Agent在进行创意设计的时候多参考你的要求,每次都给你提供更多选项之类。

常见命令

下面介绍了一些Claude code的常见命令

  • ctrl+g:打开VSCode编辑器
  • /tasks:查看当前正在运行的命令
  • /rewindesc + esc:回滚,回到之前的内容并删除后文
  • /resume:在启动之后回溯之前的对话内容
  • /compact:压缩上文,精简内容保证高质量的Memory,并且可以减少后续回复的Token
  • /clear:清空上文,用于开新任务的时候使用。当然也可以开新会话。
  • /memory:打开CLAUDE.md文件,相当于System Prompt
    • CLAUDE.md:(可使用/init命令创建)Ciallo~(∠・ω< )⌒★
  • /hooks:执行的格式化(?)
  • /plugin:可以一键安装Agent SkillMCPhook等内容,如frontend-design可以优化你的前端设计

    实战案例

我跟着最前面的视频,做了一个ToDo软件:页面简洁、UI舒适、模型轻量化且满足我自己需求的个性化ToDo(因为我没有在市面上找到不收费的、UI简洁的令我满意的ToDo)。一开始让它生成HTML网页用来测试,然后在此基础上不断更新我的要求并进行测试迭代——每次我都把新的要求反馈给CC,让它帮我修正。基本满意之后,就开始进行EXE的生成,我要求CC自己选择合适的运行环境进行软件开发,并帮我搞定运行环境、生成EXE压缩包,顺手再丢到了Github上面。

现在大家都可以在Github上下载我的这个ToDo软件。全程可以说我都在玩手机,全是CC给我写的。

Github下载链接

我使用了frontend-design这个插件(其实就是一个Skill)来帮我完成前端的设计,这个SKILL可以让AI设计出更好的前端UI。

MCP

MCP,Model Context Protocol,就是能够让大模型更好地使用各类工具(MCP Server)的一个协议。大模型的本质是问答,而通过MCP协议让LLM连接上工具,则可以更好的生成内容,获得它原本不具有的能力。

借用我们最开始LLM是“实习生”的例子来说,MCP就像手机里的软件商店,通过软件商店让符合手机厂商协议的软件APP(即MCP Server)上架,这样你的实习生就能更好地帮你做事。比如你问你的实习生明天杭州天气如何,即便他有搜索能力,也需要联网后在网上搜索各大天气网页的消息进行汇总,耗时久且不准确(容易产生幻觉)。而此时,他可以通过MCP(手机)直接调用天气APP(天气的MCP Server)直接查询,然后返回给你。

MCP Server:事实上这个“Server”不是“服务器”,它是一个“工具”、一个“函数”、或者一个“手机APP”——你给他输入特定的参数,他返还给你所需的结果的这么一个工具,是专门用在某个领域的工具。MCP Server符合MCP协议的规定,可以通过MCP被LLM调用——当LLM需要完成某个能力之外的任务时,它会查询MCP Server列表,看看有没有什么能帮到自己的函数工具,然后通过MCP协议调用它

MCP Server市场: