个人随想-gpt-o1大模型中推理链的一个落地实现

news2024/11/15 7:14:48

​首先祝大家中秋节快乐。

最近openai又推出了新的模型openai o1​还有它的mini版。官网的介绍,就是它的推理能力很强,比gpt-4o​有很大的提升。

最近也跟同行在聊这个o1,​看看落地方面有哪些可行性。在我们自己的实验上,把o1用在Chain of Goal-Oriented Reasoning 也就是CoGOR上,效果还是不错的。

有人估计没听说过​CoGOR,我稍微解释一下你们就明白了。

记得很多客户跟我们抱怨说,现在的gpt做一些问答,还是可以的,但是真的想让它做一些具体的任务,总觉得不够好。

第一:一个任务,我需要跟它互动很多次,它才能大致​理解我的内容。

第二:一旦任务过长,模型会出现幻觉,或者“前言不接后语”​,导致最终的结果不对,我又要重新开始提问。

我说,你举个例子:

客户说:​就比如,前段时间出来的llama3.1,我要给领导跟同事做一个介绍。我就问了大模型,“帮我写一个介绍llama3.1的文章​?“

写出来的东西,乱七八糟,然后我就只能继续跟大模型说:请介绍得再深入一点​。

接下来,llm又给我介绍了一大堆,除了字数变长了,其它的,我真没发现有啥区别,这个东西,我跟本没法用,更别说​去汇报了。

不光是这个客户,我相信很多的人去让​大模型帮你生成一些文档啊,内容性的报告啊,估计都会有这样的问题。

比如我一个以前的同事,作为公司的中高层吧,经常需要写一些报告啥的,​我让他问问gpt,直接回复一句:gpt太扯了。。。

​不知道大家有没有遇到类似的经历。

其实大家应该能想到,gpt生成的结果不好,是因为你给gpt的前置内容太少了。

直接让gpt帮你写llama3.1的介绍文章,或者直接让gpt帮你写进入和建设企业的技术壁垒,别说gpt了,一般的人,也不知道该从哪里下手。

那么如何可以很好的解决这样的问题呢?

​我这里大致介绍一下我们这里的落地实现,抛砖引玉,欢迎各位大神多多讨论:

其实大家应该都可以想到,大模型对于您的问题回答的不好,应该是您给大模型提供的信息太少​。现在很多人​给大模型交互,就一句话:给我写一个关于xx的报告。给我写一个​关于xx的研究文章。​稍微好一点的,最多加上一句:字数不低于xxx个字。

对于这样的指令,大模型其实很难把握住用户的具体需求,而你要让用户学习提示词,把所有关于你的需求都写清楚,这也不太可能,很多时候,用户都不知道自己写的这个报告,要​包含哪些方面。

那怎么办呢?

我们借助于llm的推理能力,来与客户沟通需求,再完全确定需求后或者达到一定的询问次数后或者用户主动结束需求沟通后,再进行下一步的具体任务执行。

​估计很多人很懵,那我来举个例子,还是以上面的llama3.1的报告为例:

H​uman:​请帮我写一个关于llama3.1的bolg。

AI:这是一个很好的goal。llama3.1是一个很有价值的模型。让我们完善这个目标并收集必要的信息,以确保​文章的​信息更加丰富。我们已经确定了一些目标,让我们进一步​探讨这些要求,并添加更多具体细节。请问,您的文章受众目标是谁,他们是Ai爱好者、开发人员还是一般的技术读者。您需要这篇文章大概多少字​。您想强调llama3.1的哪些方面​?例如:性能、新功能​或者潜在的应用程序?

Human: 文章的受众目标是AI开发人员,字数​最大不要超过500个字。请重点介绍llama3.1的性能以及与其他的sota模型​的对比,比如:gpt​-4o、claude 3.5等等。模型的基本参数您可以从​meta的官方网站或者官方blog获取。模型的对比信息,您可以参考一些​reddit的文章。

AI:谢谢您提供的具体的需求,我们已经更新了​您的上下文。让我们进一步完善您的需求并创建更有效的blog,从而为您的AI开发人员提供更有效的帮助。请问您是否希望我们重点关注特定的reddit​文章的信息从而获取llama3.1的性能对比信息?您是否希望在您的blog中包含视觉(图片或表格)元素?考虑到只有500个字,您希望如何对内容进行优先级的排序,例如:我们是否应该为模型规格分配更多的word,性能比较和潜在的应用是否可以将word的比例降低?

​Human:请参考r/localllama的reddit的文章,这个里面应该有关于llama3.1的​性能对比信息。文章中只需要性能对比的内容,不需要视觉或者图片信息​。请重点关注llama3.1的性能信息。另外,所有引用的信息,请标明引用的地址,方便我做更加详细的​了解。

​AI:。。。。。。。。

Human:。。。。。

​(这里不想打字了,太累了)

整个逻辑,我详细大家应该都能听懂,无非就是利用AI的能力去​收集用户的信息,那么有人问了,如何结束用户收集呢?

这个其实很简单,用户可以直接输入 : finish 或者 end。应用收到指令后,就结束需求收集的过程,然后就开始进行下面具体的​应用处理了。您可以使用langgraph、autogen、crewai等等,任何您觉得您最熟悉的​multi-agent框架去处理你的业务即可。或者,你的系统可以默认3次收集​,3次与用户交互结束后,就自动进入到业务处理。

看起来很简单吧,对于需求的收集,以前我们用的是sonnet以及gpt-4o,现在我们已经换成了gpt o1。个人觉得效果比前两个好。

需求收集完的业务逻辑处理,就很简单了,无非就是各种multi-agent的处理,大家应该都会,如果不会的,也可以留言,我过几天再出一​期。

ok,难度不大,大家应该也都能想到,我这里就是正好想到了,跟大家汇报一下我们最近的​o1的落地实践。

最后再一次祝大家​中秋节快乐。

​哦,对了,别忘了关注我的视频号。谢谢啦

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

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

相关文章

Python画笔案例-052 绘制彩色递归六边形

1、绘制彩色递归六边形 通过 python 的turtle 库绘制 彩色递归六边形,如下图: 2、实现代码 绘制彩色递归六边形,以下为实现代码: """彩色递归六边形.py """ import turtledef draw_circle(radius,…

【自动化测试】移动app的分层测试以及自动遍历的基本概念

引言 移动应用的分层测试是一种系统化的测试方法,它将测试过程分解为不同的层次,以确保应用在每个层面上都符合设计要求和用户期望 文章目录 引言一、移动app的分层测试1.1 单元测试(Unit Testing)1.2 集成测试(Integr…

甲骨文创始人埃里森:人工智能终有一天会追踪你的一举一动

9月17日消息,据外电报道,甲骨文创始人拉里埃里森在甲骨文财务分析师会议上表示,他预计人工智能有一天将为大规模执法监控网络提供动力。“我们将进行监督。”他说。“每一位警察都将随时受到监督,如果有问题,人工智能会…

人工智能辅助汽车造型设计

随着科技的不断进步,人工智能(AI)在各个领域的应用越来越广泛,汽车设计行业也不例外。尤其在车辆外观造型设计中,AI正在成为设计师的重要助手,通过提供强大的工具和独特的创意方式,革新了传统设…

算法之搜索--最长公共子序列LCS

最长公共子序列&#xff08;longest common sequence&#xff09;:可以不连续 最长公共子串&#xff08;longest common substring&#xff09;&#xff1a;连续 demo for (int i 1;i<lena;i){for (int j 1;j<lenb;j){if(a[i-1]b[j-1]){dp[i][j]dp[i-1][j-1]1;}el…

神奇的Serializable接口,为什么有时候网络传输不用实现Serializable,有时候又需要?

大家好&#xff0c;这里是小奏,觉得文章不错可以关注公众号小奏技术 背景 其他大家在初学java的时候肯定是接触过Serializable接口的&#xff0c;这个接口是一个标记接口&#xff0c;没有任何方法&#xff0c;只是一个标记&#xff0c;用来标记一个类可以被序列化&#xff0c;…

深入解析代理模式:静态代理、JDK 动态代理和 CGLIB 的全方位对比!

代理模式&#xff08;Proxy Pattern&#xff09;是一种结构型设计模式&#xff0c;它提供了对象的替身&#xff0c;即代理对象来控制对实际对象的访问。通过代理对象&#xff0c;可以在不修改目标对象的情况下&#xff0c;扩展或控制其功能。例如&#xff0c;代理模式可以用于延…

JDBC的介绍和连接MySQL数据库

目录 1. 为什么学习JDBC 1.1 数据存储​编辑​编辑 1.2 数据操作​编辑 2. JDBC概述 2.1 JDBC概念 2.2 JDBC 核心组成 3. 实现 JDBC 3.1 JDBC 搭建步骤 3.2 详细演示 3.3 核心API 3.3.1 Driver​ 3.3.2 Connection​ 3.3.3 Statament​ 3.3.4 PreparedStatement …

嵌入式单片机中can总线调试方法

大家好,今天将向大家介绍如何使用STM32F4自带的CAN控制器实现两个开发板之间的CAN通信。 1.CAN CAN是控制器局域网络(Controller Area Network, CAN)的简称,是由以研发和生产汽车电子产品著称的德国BOSCH公司开发的,并最终成为国际标准(ISO 11898),是国际上应用最广泛的…

大模型笔记03--快速体验dify

大模型笔记03--快速体验dify 介绍部署&测试部署 dify测试dify对接本地ollama大模型对接阿里云千问大模型在个人网站中嵌入dify智能客服 注意事项说明 介绍 Dify 是一款开源的大语言模型(LLM) 应用开发平台。它融合了后端即服务&#xff08;Backend as Service&#xff09;…

优化 OR 条件过多导致的查询超时

优化 OR 条件过多导致的查询超时 文章目录 优化 OR 条件过多导致的查询超时背景问题分析方案分析方案一&#xff1a;入参去重方案二&#xff1a;分页或者分批查询方案三&#xff1a;UNION 代替 OR方案四&#xff1a;IN 代替 OR1. 分别对列进行 IN 查询&#xff0c;在代码中进行…

同一Python脚本中训练多个模型时的 wandb 配置错误解决方案

文章目录 摘要背景介绍报错信息wandb 模型训练名 摘要 在机器学习项目中&#xff0c;使用Python脚本训练多个模型时&#xff0c;可能会遇到WandB&#xff08;Weights and Biases&#xff09;配置错误&#xff0c;尤其是在训练多个模型参数大小不一致的情况下。 本文将介绍如何…

Vue学习记录之三(ref全家桶)

ref、reactive是在 setup() 声明组件内部状态用的&#xff0c; 这些变量通常都要 return 出去&#xff0c;除了供 < template > 或渲染函数渲染视图&#xff0c;也可以作为 props 或 emit 参数 在组件间传递。它们的值变更可触发页面渲染。 ref &#xff1a;是一个函数&…

Get包中的根组件

文章目录 1. 知识回顾2. 使用方法2.1 源码分析2.2 常用属性 3. 示例代码4. 内容总结 我们在上一章回中介绍了"Get包简介"相关的内容&#xff0c;本章回中将介绍GetMaterialApp组件.闲话休提&#xff0c;让我们一起Talk Flutter吧。 1. 知识回顾 我们在上一章回中已经…

Unity webgl跨域问题 unity使用nginx设置跨域 ,修改请求头

跨域 什么是跨域 跨域是指浏览器因安全策略限制&#xff0c;阻止一个域下的网页访问另一个域下的资源。 一些常见的跨域情况&#xff1a; 协议不同 从 http://example.com 请求 https://example.com。域名不同 从 http://example.com 请求 http://anotherdomain.com。端口不…

Village Exteriors Kit 中世纪乡村房屋场景模型

此模块化工具包就是你一直在寻找的适合建造所有中世纪幻想村庄和城市建筑所需要的工具包。 皇家园区 - 村庄外饰套件的模型和纹理插件资源包 酒馆和客栈、魔法商店、市政大厅、公会大厅、布莱克史密斯锻造厂、百货商店、珠宝商店、药店、草药师、银行、铠甲、弗莱切、马厩、桌…

list从0到1的突破

目录 前言 1.list的介绍 2.list的常见接口 2.1 构造函数&#xff08; (constructor)&#xff09; 接口说明 2.2 list iterator 的使用 2.3 list capacity 2.4 list element access 2.5 list modifiers 3.list的迭代器失效 附整套练习源码 结束语 前言 前面我们学习…

Defining Constraints with ObjectProperties

步骤4&#xff1a;使用对象定义约束 物业 您可以创建时间和放置约束&#xff0c;如本教程所示。你也可以 更改单元格的属性以控制Vivado实现如何处理它们。许多 物理约束被定义为单元对象的属性。 例如&#xff0c;如果您在设计中发现RAM存在时序问题&#xff0c;为了避免重新合…

C语言代码练习(第二十六天)

今日练习&#xff1a; 数据的交换输出输入 n 个数&#xff0c;找出其中最小的数&#xff0c;将它与最前面的数交换后输出这些数 输入一个英文句子&#xff0c;将每个单词的第一个字母改成大写字母 输入一个十进制数 N &#xff0c;将它转换成 R 进制数输出 数据的交换输出输入 …

阿里OSS对象存储服务,实现图片上传回显

阿里OSS对象存储服务 OSS服务1. 创建buckte2. 获取accesskey3. 参照官方SDK编写程序安装SDK 4. 程序编写5. 封装6. 在spring中调用 OSS服务 阿里云对象存储 OSS&#xff08;Object Storage Service&#xff09;是一款海量、安全、低成本、高可靠的云存储服务&#xff0c;提供最…