前端AI学习实践笔记
# 前端AI学习实践笔记
- 熟悉Coze,dify的使用
- 用Coze搭建一个自动用剪映生成AI视频的工作流
- 了解vscode接入 github copilot 原理
利用langchain.js,低码平台接入RAG,实现低成本配置页面
Ollama本地搭建模型,部署到服务器上
低码平台接入AI工作流
# 问题记录
# 角色设定
提示词设定
# 上下文token消耗问题
- Prompt Engineering:怎么写好提示词
- Context Engineering:怎么管理上下文窗口里的信息
LLM 的上下文窗口是有限的(即使是 200k 窗口,也会被大量信息撑爆)。Context Engineering 的核心问题是:在有限的窗口里,放什么信息能让 AI 表现最好?
上下文工程策略旨在通过智能化的压缩、卸载和摘要技术,在保持信息完整性的同时,有效控制上下文大小。
- 狭义的上下文工程特指对短期记忆(会话历史)中各种压缩、摘要、卸载等处理机制,主要解决上下文窗口限制和 token 成本问题;
- 广义的上下文工程则包括更广泛的上下文优化策略,如非运行态的模型选择、Prompt 优化工程、知识库构建、工具集构建等,这些都是在模型推理前对上下文进行优化的手段,且这些因素都对模型推理结果有重要影响。
上下文缩减(Context Reduction)
上下文缩减通过减少上下文中的信息量来降低 token 消耗,主要有两种方法:
- 保留预览内容:对于大块内容,只保留前 N 个字符或关键片段作为预览,原始完整内容被移除
- 总结摘要:使用 LLM 对整段内容进行总结摘要,保留关键信息,丢弃细节
这两种方法都会导致信息丢失,但能有效减少 token 消耗。
上下文卸载(Context Offloading)
上下文卸载主要解决被缩减的内容是否可恢复的问题。当内容被缩减后,原始完整内容被卸载到外部存储(如文件系统、数据库等),消息中只保留最小必要的引用(如文件路径、UUID 等)。当需要完整内容时,可以通过引用重新加载。
优势: 上下文更干净,占用更小,信息不丢,随取随用。适用于网页搜索结果、超长工具输出、临时计划等占 token 较多的内容。
上下文隔离(Context Isolation)
通过多智能体架构,将上下文拆分到不同的子智能体中(类似单体拆分称多个微服务)。主智能体编写任务指令,发送给子智能体,子智能体的整个上下文仅由该指令组成。子智能体完成任务后返回结果,主智能体不关心子智能体如何执行,只需要结果。
适用场景: 任务有清晰简短的指令,只有最终输出才重要,如代码库中搜索特定片段。
优势: 上下文小、开销低、简单直接。
# 缓存问题
# 记忆能力
原始的 LLM 也是无状态的。每一次对话都是新的开始,它不记得上一次对话的内容,不记得用户是谁。
HistoryMessages,总结历史会话,作为上下文插入提示词
Memory 系统为 Agent 引入了时间的维度,使得 Agent 可以记住之前的对话内容,从而更好地理解用户意图和上下文。
# 信息有限
rag,解决幻觉
# 能力边界
工具调用 Tool
Function Calling