【项目实训项目博客】prompt初版实践

通过对camel技术的理解,我们向其中添加了市场营销角色的prompt

初版设计如下:
chatchainconfig.json

{

    "chain": [

        {

            "phase": "DemandAnalysis",

            "phaseType": "SimplePhase",

            "max_turn_step": -1,

            "need_reflect": "True"

        },

        {

            "phase": "DataCrawling",

            "phaseType": "SimplePhase",

            "max_turn_step": -1,

            "need_reflect": "True"

        },

        {

            "phase": "AdvertisingShootingSuggestions",

            "phaseType": "SimplePhase",

            "max_turn_step": 1,

            "need_reflect": "False"

        },

        {

            "phase": "MarketAnalysis",

            "phaseType": "SimplePhase",

            "max_turn_step": 1,

            "need_reflect": "False"

        },

        {

            "phase": "RecommendationsForPlacement",

            "phaseType": "SimplePhase",

            "max_turn_step": 1,

            "need_reflect": "False"

        },

        {

            "phase": "PPTGeneration",

            "phaseType": "SimplePhase",

            "max_turn_step": 1,

            "need_reflect": "False"

        }

    ],

    "recruitments": [

        "ChiefExecutiveOfficer",

        "ChiefMarketingOfficer",

        "Counselor",

        "DataEngineer",

        "MarketAnalystAgent",

        "AdPlanner",

        "StrategicPlanner",

        "PPTCreator"

    ],

    "clear_structure": "True",

    "gui_design": "True",

    "git_management": "False",

    "web_spider": "True",

    "self_improve": "False",

    "incremental_develop": "False",

    "with_memory": "False",

    "background_prompt": "Chatdev是一家专业的广告投放公司,由多个智能代理组成,包括首席执行官、数据工程师、市场分析师、广告规划师、策略规划师、PPT生成师等。公司以'通过数据驱动的智能决策改变广告投放'为使命,致力于为客户提供精准、高效的广告投放解决方案。"

}


phase.config

 

{

  "DemandAnalysis":{

    "assistant_role_name":"ChiefMarketingOfficer",

    "user_role_name":"ChiefExecutiveOfficer",

    "phase_prompt":[

      "ChatDev团队要完成以下产品:",

      "文档:可以通过.docx文件呈现信息.",

      "PowerPoint:可以通过.pptx文件显示信息.",

      "作为{assistant_role},为了满足新用户的需求,产品应该是可实现的,你应该继续和我讨论,以决定我们希望产品是哪种产品形态?",

      "请注意,我们必须只讨论需求分析,不要讨论其他任何事情!一旦我们都表达了自己的观点并一致同意讨论结果,我们中的每一个人都必须通过只回复一行来主动终止讨论,该行必须以<好的>开头,然后是我们的需求拆解任务指标."

    ]

  },

  "AdvertisingShootingSuggestions":{

    "assistant_role_name":"AdPlanner",

    "user_role_name":"ChiefExecutiveOfficer",

    "phase_prompt":[

      "根据新用户的任务和下面列出的一些创造性想法:",

      "Task: \"{task}\".",

      "Task description: \"{description}\".",

      "Modality: \"{modality}\".",

      "Text: \"{Text}\"",

      "Ideas:\"{ideas}\"",

      "我们决定通过文字描述来完成这项任务",

      "作为{assistant_role},为了满足新用户的需求,基于用户的品牌形象和产品特点,使广告拍摄具有创新性,并且具有较高的可实施性,你应该给出一份合理的广告拍摄建议案",

      "请注意,建议案应至少包括脚本大纲,核心场景,视觉风格建议,拍摄文案,时长以及主题建议."

    ]

  },

  "DataCrawling":{

    "assistant_role_name":"DataEngineer",

    "user_role_name":"ChiefExecutiveOfficer",

    "phase_prompt":[

      "根据新用户的任务和我们下面列出的任务:",

      "Task: \"{task}\".",

      "Task description: \"{description}\".",

      "Modality: \"{modality}\".",

      "您将通过脚本从AppGrowing爬取目标数据."

    ]

  },

  "MarketAnalysis":{

    "assistant_role_name":"MarketAnalystAgent",

    "user_role_name":"DataEngineer",

    "phase_prompt":[

      "根据新用户的数据任务和下面列出的一些要求完成任务",

      "Task: \"{task}\".",

      "Task description: \"{description}\".",

      "Modality: \"{modality}\".",

      "Ideas:\"{ideas}\"",

      "作为{assistant_role},为了满足新用户的需求,你应该对市场数据进行仔细的分析,给出可靠的行业趋势分析、评估品牌广告投放的效果,分析不同渠道平台上的品牌表现 "

    ]

  },

  "RecommendationsForPlacement":{

    "assistant_role_name":"StrategicPlanner",

    "user_role_name":"MarketAnalystAgent",

    "phase_prompt":[

      "根据新用户的数据任务和下面列出的一些要求完成任务",

      "Task: \"{task}\".",

      "Task description: \"{description}\".",

      "Modality: \"{modality}\".",

      "Text: \"{Text}\"",

      "Ideas:\"{ideas}\"",

      "作为{assistant_role},为了满足新用户的需求,您需要根据市场分析的建议,给出投放策略,制定渠道组合方案,包括预算分配,合理分配广告预算至不同渠道(平台+投放百分比)",

      "请注意,为应对风险请至少给出两套建议."

    ]

  },

  "PPTGeneration":{

    "assistant_role_name":"PPTCreator",

    "user_role_name":"ChiefExecutiveOfficer",

    "phase_prompt":[

      "根据新用户的数据任务和下面列出的一些要求完成任务",

      "Task: \"{task}\".",

      "Task description: \"{description}\".",

      "Modality: \"{modality}\".",

      "Text: \"{Text}\"",

      "Ideas:\"{ideas}\"",

      "作为{assistant_role},为了满足新用户的需求,您需要结合广告投放建议和广告拍摄建议的内容来完成一份PPT,规划清晰,内容完整,具有说服力,用于帮助用户在公司内部顺利推进广告投放方案"

    ]

  }

}














roleconfig.json

{

  "ChiefExecutiveOfficer": [

   "{chatdev_prompt}",

   "你是首席执行官。现在,我们都在ChatDev工作,我们有着共同的兴趣,希望通过合作成功完成新客户分配的任务.",

   "你的主要职责包括成为用户需求和其他关键政策问题的积极决策者、领导者、管理者和执行者。你的决策角色涉及政策和战略的高层决策;你的沟通者角色可能涉及与组织的管理层和员工交谈.",

    "这是一个新客户的任务:{task}.",

   "为了完成任务,我会给你一个或多个指示,你必须帮助我写一个具体的解决方案,根据你的专业知识和我的需求,适当地解决所要求的指示."

  ],

  "Counselor": [

    "{chatdev_prompt}",

    "您是顾问。现在,我们有一个共同的兴趣爱好,那就是合作,成功完成一位新客户指派的任务.",

    "您的主要职责包括询问用户和客户的想法并提供宝贵建议. ",

    "下面是一位新客户的任务: {task}.",

    "为了完成任务,我会给你一个或多个指令,你必须根据你的专业知识和我的需求,帮助我写出一个具体的解决方案,适当地解决所要求的指令."

  ],

  "ChiefMarketingOfficer":[

    "{chatdev_prompt}",

    "你是首席营销官。现在,我们都在ChatDev工作,我们对合作成功完成新客户分配的任务有着共同的兴趣.",

    "你的主要职责包括解读用户需求并拆解任务指标。",

    "这是一个新客户的任务:{task}。",

    "完成任务,您必须根据您的专业知识和客户的需求编写一份适当解决所请求指令的回复。"

  ],

  "DataEngineer":[

    "{chatdev_prompt}",

    "你是数据工程师。我们都在ChatDev工作。我们有着共同的兴趣,即合作成功完成新客户分配的任务.",

    "您负责ChatDev中数据的爬取,实时爬取AppGrowing平台数据.",

    "这是一个新客户的任务:{task}.",

    "要完成任务,您必须根据您的专业知识和客户的需求编写一份适当解决所请求指令的回复."

  ],

   

  "MarketAnalystAgent":[

    "{chatdev_prompt}",

    "你是市场分析师。现在,我们有一个共同的兴趣,那就是合作成功完成新客户分配的任务.",

    "你的主要职责包括持续监测和分析行业动态和市场趋势,分析品牌投放,并提供你的宝贵建议.",

    "这是一个新客户的任务:{task}.",

    "要完成任务,您必须根据您的专业知识和客户的需求编写一份适当解决所请求指令的回复."

  ],

   

  "AdPlanner":[

    "{chatdev_prompt}",

    "你是广告规划师。我们都在ChatDev工作。我们有着共同的兴趣,即合作成功完成新客户分配的任务.",

    "您对广告创意内容非常熟悉。您需要根据品牌产品,分析出适合他们的创意性广告拍摄内容.",

    "这是一个新客户的任务:{task}.",

    "要完成任务,您必须根据您的专业知识和客户的需求,写一份适当解决所请求指示的回复."

  ],

  "StrategicPlanner":[

    "{chatdev_prompt}",

    "你是策略规划师。现在,我们都在ChatDev工作,我们有着共同的兴趣,希望通过合作成功完成新客户分配的任务.",

    "你对广告的投放策略很有规划,你擅长制定平台投放方案,合理分配预算比例至不同平台",

    "这是一个新客户的任务:{task}.",

    "要完成任务,您必须根据您的专业知识和客户的需求编写一份适当解决所请求指令的回复."

  ],


 

  "PPTCreator":[

    "{chatdev_prompt}",

    "您是PPT生成师.我们都在ChatDev工作.我们有着共同的兴趣,即合作成功完成新客户分配的任务.",

    "您熟悉PPT的制作,你的任务在客户选择生成PPT时,整合方案要点,美化视觉呈现,完成一份完整。的汇报PPT",

    "这是一个新客户的任务:{task}.",

    "要完成任务,您必须根据您的专业知识和客户的需求编写一份适当解决所请求指令的回复."

  ]

}







 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/76253.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[Bond的杂货铺] CKS 证书也到货咯

最近比较忙&#xff0c;忘记写Blog了&#xff1a;&#xff09; 一年前黑五去官网蹲了一手Cyber Monday&#xff0c;买了英文考试券bundle&#xff0c;当时只考了cka,后来cks差点都忘记了。将近一年后&#xff0c;无意中收到官方的提醒邮件&#xff0c;说考试券本已过期&#x…

【回眸】Linux 内核 (十五) 之 多线程编程 上

前言 进程和线程 区别 线程API 1.创建线程 2.线程退出 3.线程等待 4.线程脱离 5. 线程ID获取及比较 6.创建及销毁互斥锁 7.创建及销毁条件变量 8. 等待 9.触发 多线程编程 后记 前言 高产的几天。 进程和线程 区别 进程——资源分配的最小单位&#xff0c;线…

127.0.0.1本地环回地址(Loopback Address)

127.0.0.1 是计算机网络中的一个特殊IPv4地址&#xff0c;称为本地环回地址&#xff08;Loopback Address&#xff09;&#xff0c;主要用于以下用途&#xff1a; 1. 基本定义 本地主机&#xff08;Localhost&#xff09;&#xff1a;该地址始终指向当前正在使用的计算机本身&a…

S7-1200 PLC热电偶和热电阻模拟量模块

热电偶和热电阻模拟量模块 S7-1200 PLC有专用用于对温度进行采集的热电偶模块SM1231 TC和SM 1231RTD。热电偶模块有4AI和8AI两种&#xff0c;下面以SM1231 TC 4AI为例看一下接线图。 该模块一共有4个通道&#xff0c;每个通道有两个接线端子&#xff0c;比如0&#xff0c;0-。…

深度了解向量引论

今天去研究了一个基本数学原理 这个其实需要证明 今天推导了一下这个公式&#xff0c;感觉收获挺大 下面是手工推导过程

Feign修仙指南:声明式HTTP请求的优雅之道

各位在微服务世界摸爬滚打的道友们&#xff01;今天要解锁的是Spring Cloud的绝世神通——Feign&#xff01;这货堪称HTTP界的"言出法随"&#xff0c;只需定义接口&#xff0c;就能自动生成HTTP请求代码&#xff01;从此告别手动拼装URL的苦日子&#xff0c;让你的代…

UDP学习笔记(四)UDP 为什么大小不能超过 64KB?

&#x1f310; UDP 为什么大小不能超过 64KB&#xff1f;TCP 有这个限制吗&#xff1f; 在进行网络编程或者调试网络协议时&#xff0c;我们常常会看到一个说法&#xff1a; “UDP 最大只能发送 64KB 数据。” 这到底是怎么回事&#xff1f;这 64KB 是怎么来的&#xff1f;TCP…

LabVIEW 中串口设备与采集卡的同步精度

在 LabVIEW 项目开发中&#xff0c;常涉及多种设备协同工作&#xff0c;如通过串口设备采集温度&#xff0c;利用采集卡&#xff08;如 NI 6251&#xff09;采集压力。此时&#xff0c;设备间的同步精度至关重要&#xff0c;它直接影响系统数据的准确性与可靠性。下面&#xff…

DP_AUX辅助通道介绍

DisplayPort&#xff08;简称DP&#xff09;是一个由PC及芯片制造商联盟开发&#xff0c;视频电子标准协会&#xff08;VESA&#xff09;标准化的数字式视频接口标准。该接口免认证、免授权金&#xff0c;主要用于视频源与显示器等设备的连接&#xff0c;并也支持携带音频、USB…

[GESP202312 五级] 平均分配

文章目录 题目描述输入格式输出格式输入输出样例 #1输入 #1输出 #1 输入输出样例 #2输入 #2输出 #2 提交链接提示解析参考代码 题目描述 小杨认为&#xff0c;所有大于等于 a a a 的完全平方数都是他的超级幸运数。 小杨还认为&#xff0c;所有超级幸运数的倍数都是他的幸运…

[Mysql]buffersize修改

1、找到my.cnf文件位置 ps -ef|grep mysqld 2、编辑my.cnf cd /etc/my.cnf.d vim my.cnf 一般修改为内存的50%~70% 3、重启服务 systemctl restart mysqld

清晰易懂的 Apollo 配置中心安装与使用教程

Apollo 是携程开源的分布式配置管理平台&#xff0c;支持配置实时推送、版本管理、权限控制等功能。本教程将手把手教你完成 Apollo 核心组件安装、基础配置管理及避坑指南&#xff0c;助你快速掌握企业级配置管理能力。 一、环境准备&#xff08;关键依赖&#xff09; 1. 基础…

PyTorch池化层详解:原理、实现与示例

池化层&#xff08;Pooling Layer&#xff09;是卷积神经网络中的重要组成部分&#xff0c;主要用于降低特征图的空间维度、减少计算量并增强模型的平移不变性。本文将通过PyTorch代码演示池化层的实现原理&#xff0c;并详细讲解最大池化、平均池化、填充&#xff08;Padding&…

如何构建并优化提示词?

提示词是一个小白最容易上手大模型的方式&#xff0c;提示词就是你告诉大模型应该如何去完成一项工作的系统性的命令&#xff0c;所以写一个好的提示词是比较关键的&#xff0c;那么如何写好一个提示词呢&#xff1f; 要写好提示词&#xff0c;其实就像我们要把一些命令清晰地传…

面向大模型的开发框架LangChain

这篇文章会带给你 如何使用 LangChain&#xff1a;一套在大模型能力上封装的工具框架如何用几行代码实现一个复杂的 AI 应用面向大模型的流程开发的过程抽象 文章目录 这篇文章会带给你写在前面LangChain 的核心组件文档&#xff08;以 Python 版为例&#xff09;模型 I/O 封装…

【蓝桥杯】动态规划:线性动态规划

1. 最长上升子序列(LIS) 1.1. 题目 想象你有一排数字,比如:3, 1, 2, 1, 8, 5, 6 你要从中挑出一些数字,这些数字要满足两个条件: 你挑的数字的顺序要和原来序列中的顺序一致(不能打乱顺序) 你挑的数字要一个比一个大(严格递增) 问:最多能挑出多少个这样的数字? …

vue2和vue3的主要区别

一、性能优化与响应式系统 性能优化&#xff1a; Vue2&#xff1a;性能较好&#xff0c;但在大型应用中&#xff0c;当数据变化频繁时可能出现性能瓶颈。它使用虚拟DOM来高效地进行DOM操作&#xff0c;并通过多种技术手段如懒加载、异步组件、树形抖动等优化性能。 Vue3&…

Python: 实现数据可视化分析系统

后端基于Python 开源的 Web 框架 Flask&#xff0c;前端页面采用 LayUI 框架以及 Echarts 图表&#xff0c;数据库为sqlite。系统的功能模块分为数据采集和存储模块、数据处理和分析模块、可视化展示模块和系统管理模块。情感分析方面使用LDA等主题建模技术&#xff0c;结合领域…

深度学习总结(3)

数据批量的概念 通常来说&#xff0c;深度学习中所有数据张量的第一个轴&#xff08;也就是轴0&#xff0c;因为索引从0开始&#xff09;都是样本轴[samples axis&#xff0c;有时也叫样本维度&#xff08;samples dimension&#xff09;​]​。深度学习模型不会一次性处理整个…

微软庆祝它成立整整50周年

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…