模块 ① · 认知 · Chatbot → Agent
造得出来,才算真懂 ✨
看懂 AI 的迅猛发展:从「会聊天」的 Chatbot,到「会干活」的智能体。用 8 步、每步只加几行代码,你亲手把一个 agent 造出来。你不用会写代码——AI 帮你写,你负责看懂每一步。
这是这个模块最重要的一句话。它俩差在哪?
你问一句、它答一句。会聊天,但只是「说」——不会真的去查文件、跑命令、完成一件多步骤的事。
会「做」:能自己规划、调用工具、看结果、再决定下一步,直到把任务真正完成。Agent = LLM + Harness。
LLM 是「会思考的大脑」,Harness(驾驭工程)是让它能干活的四件套。
想 → 做 → 看结果 → 再想,直到完成
能读写文件、跑命令,不只是聊天
记住聊过什么,才能连续工作
做完检查一下对不对、安不安全
每步只加一个想法。你会看着它一点点「活」起来。
s0_llm.py和 AI 说一句、收一句。最小的起点。
s1_chat.py能连续聊了,但它还记不住上一句。
s2_memory.py用一个 messages 列表存历史,它就「记住」了。
s3_agent.py ★双层循环 + 执行命令——从「会说」到「会做」。这一步是关键转折,下面拆给你看。
s4_agent_md.py把规则搬进 agent.md 文件,改行为不用改代码。
s5_agent_skill.py ★换个 skill 文件 = 换个专家。同一套代码,装上「作文反馈」技能就是作文老师,装上「CBT」技能就是心理陪伴。
s6_tutor_agent.py代码一行不改,只换 skill,就变成一个课程导师。
s7_psy_agent.py把「倾听 + CBT」几个技能组合成一种能力。
别怕代码——核心就这么点。你只要看懂它在「循环里做事」就够了。
# 系统提示:让 AI 只用两种格式回复——「命令:XXX」或「完成:XXX」 messages = [{"role":"system", "content": 系统提示}] while True: # 外层:等你派一个任务 user_input = input("你:") messages.append({"role":"user", "content": user_input}) while True: # 内层:AI 自主执行,直到说「完成:」 reply = client.chat.send(model=..., messages=messages) # AI 决定下一步 if reply.startswith("完成:"): # 说完成 → 收工 break command = reply.split("命令:")[1] # 否则:取出它要执行的命令 result = os.popen(command).read() # 真的去执行,拿到结果 messages.append({"role":"user", "content": f"执行完毕:{result}"}) # 把结果喂回去,继续循环