系统提示设计

系统提示设计2026:打造AI的灵魂

引言 系统提示(System Prompt)是LLM应用的"灵魂"。它定义了AI的角色、行为方式、能力边界和价值观。一个好的系统提示可以让AI从"通用聊天机器人"变成"专业领域专家"。2026年,随着模型指令跟随能力的提升,系统提示的设计也变得更加重要和复杂。本文将系统介绍系统提示设计的最佳实践。 系统提示的作用 作用一:角色定义 定义AI是谁、有什么能力、不能做什么。 ### 角色定义 你是一个专业的Python编程助手,名字叫"PyBot"。 你的能力: - 生成Python代码 - 调试和修复Bug - 解释代码逻辑 - 推荐最佳实践 你的限制: - 不能执行代码(只能生成) - 不能访问用户文件系统 - 不能处理非Python相关请求 作用二:行为约束 定义AI的回复风格、格式、长度等。 ### 回复风格 - 语气:专业但友好 - 长度:代码生成时简洁,解释时详细 - 格式:代码用Markdown代码块,解释用自然语言 - 语言:中文(如果用户用中文提问) 作用三:安全边界 定义AI的安全边界,防止滥用。 ### 安全边界 - 不生成恶意代码(病毒、木马等) - 不泄露敏感信息(密码、API密钥等) - 不提供违法建议(黑客攻击、欺诈等) - 如果发现可疑请求,礼貌拒绝并说明原因 作用四:上下文设定 为AI提供任务相关的背景知识。 ### 背景知识 用户正在开发一个电商网站,使用以下技术栈: - 后端:Python + FastAPI - 数据库:PostgreSQL - 前端:React - 部署:Docker + Kubernetes 请提供与该技术栈相关的建议。 系统提示结构 推荐结构 ### 系统提示模板 #### 1. 角色定义(Role Definition) 你是...[定义身份、名字、专业领域] #### 2. 核心任务(Core Task) 你的主要任务是...[明确任务目标] #### 3. 能力范围(Capabilities) 你可以...[列出能做的事] 你不能...[列出不能/不应该做的事] #### 4. 行为准则(Behavioral Guidelines) - 回复风格:... - 输出格式:... - 处理流程:... #### 5. 安全边界(Safety Boundaries) - 不...[禁止行为] - 如果...[异常情况处理] #### 6. 示例(Few-Shot Examples) [1-3个示例展示期望的输入输出] #### 7. 附加信息(Additional Context) [任务相关的背景知识、术语表等] 示例:客服机器人系统提示 ### 1. 角色定义 你是一个专业的电商客服助手,名字叫"小商"。 你代表"优选商城"与客户沟通。 ### 2. 核心任务 你的主要任务是: - 回答客户关于商品的问题 - 处理订单查询和退换货申请 - 解决客户的投诉和建议 - 提供购物建议和推荐 ### 3. 能力范围 你可以: - 查询订单状态(通过工具) - 查询商品信息(通过工具) - 处理退换货申请(通过工具) - 提供优惠券和促销信息 你不能: - 修改商品价格(需要人工审核) - 处理大额退款(>5000元,需要主管审批) - 访问客户的支付密码或银行卡信息 ### 4. 行为准则 - 语气:礼貌、耐心、同理心 - 回复速度:简单问题立即回答,复杂问题3轮内解决 - 格式:用清晰的段落和编号列表 - 如果无法处理,转人工客服 ### 5. 安全边界 - 不泄露其他客户的信息 - 不承诺超出权限的范围(如"一定退款") - 如果遇到恶意客户,保持冷静,必要时转人工 ### 6. 示例 客户:我的订单什么时候到? 你:您好!请提供您的订单号,我帮您查询物流信息。 客户:我想退货,怎么操作? 你:抱歉给您带来不便。请您提供订单号,我帮您处理退货申请。退货政策:收到商品7天内可无理由退货。 ### 7. 附加信息 - 公司退换货政策:[链接] - 物流合作方:顺丰、京东物流 - 客服热线:400-XXX-XXXX(人工) 2026年系统提示进阶技巧 技巧一:动态系统提示 根据用户输入动态调整系统提示: ...

2026-07-02 · 2 min · 386 words · 硅基 AGI 探索者
CrewAI 2026:多Agent协作框架的生产部署经验

CrewAI 2026:多Agent协作框架的生产部署经验

CrewAI 2026:从Demo到生产的跨越 CrewAI以其直观的"角色-任务-流程"(Role-Task-Process)三元组模型,成为搭建多Agent协作系统最快速的框架。2026版本在生产可靠性方面做了大量改进,使其不再只是Demo级别的玩具。 本文基于我们在金融分析和内容生产两个场景的生产部署经验,分享CrewAI的工程化最佳实践。 角色设计方法论 角色边界原则 CrewAI的核心抽象是Agent角色。最常见的错误是角色定义过于宽泛,导致Agent行为不可预测。我们总结出SPECIALIST原则: from crewai import Agent, Task, Crew, Process from crewai.tools import BaseTool # ❌ 错误:角色过于宽泛 bad_agent = Agent( role="通用助手", goal="帮助用户解决所有问题", backstory="一个全能的AI助手" ) # ✅ 正确:角色聚焦且边界清晰 financial_analyst = Agent( role="上市公⻔财务分析师", goal="分析目标公司的财务报表,识别风险和机会,输出结构化评估报告", backstory="""你是一位拥有15年经验的上市公司财务分析师, 专注于消费零售赛道。你擅长从财报数据中发现异常信号, 曾多次提前预警财务造假。你只分析公开财报数据, 不做股价预测或投资建议。""", tools=[FinancialDataTool(), SECQueryTool()], llm="gpt-4o", max_iter=5, # 2026新特性:限制迭代次数防止无限循环 verbose=True ) 任务分解的粒度控制 # 研究报告生成Crew的任务分解 research_tasks = [ Task( description="""分析{company}最近三年的财务报表: 1. 营收增长率和毛利率趋势 2. 应收账款周转天数变化 3. 存货周转率变化 4. 现金流与净利润的匹配度 输出JSON格式的分析结果""", agent=financial_analyst, expected_output="JSON格式的财务指标分析", output_file="output/financial_analysis.json" ), Task( description="""基于财务分析结果,撰写{company}的风险评估报告: - 总结3个主要风险点 - 每个风险附带量化指标 - 给出风险等级(低/中/高) - 提供缓解建议""", agent=risk_writer, expected_output="Markdown格式的风险评估报告", context=[task_for_financial_analysis], # 显式依赖 output_file="output/risk_report.md" ) ] 生产部署架构 容器化部署方案 # docker-compose.yml - CrewAI生产部署 version: '3.9' services: crewai-api: build: . ports: - "8000:8000" environment: - OPENAI_API_KEY=${OPENAI_API_KEY} - CREWAI_TELEMETRY=false - CREWAI_STORAGE_BACKEND=redis - REDIS_URL=redis://redis:6379 - CREWAI_MAX_CONCURRENT_CREWS=10 deploy: replicas: 3 resources: limits: memory: 2G cpus: '2.0' restart_policy: condition: on-failure max_attempts: 3 redis: image: redis:7-alpine command: redis-server --maxmemory 512mb --maxmemory-policy allkeys-lru volumes: - redis-data:/data crewai-monitor: image: crewai/monitor:2026.1 ports: - "3000:3000" environment: - CREWAI_API_URL=http://crewai-api:8000 depends_on: - crewai-api volumes: redis-data: 异步Crew执行 2026版本引入了原生异步支持,这对于长时间运行的分析任务至关重要: ...

2026-06-30 · 3 min · 439 words · 硅基 AGI 探索者
鲁ICP备2026018361号