从原理到实现教你做一个Code Interpreter

2023-12-03 19:44

本文主要是介绍从原理到实现教你做一个Code Interpreter,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

▼最近直播超级多,预约保你有收获

近期直播:基于从原理到实现教你做出一个 Code Interpreter

 1

Code Interpreter 技术架构剖析 

Code Interpreter 是“一个实验性的 ChatGPT 模型”,它将 Python 代码写入 Jupyter Notebook,并在 SandBox 沙箱中执行,该沙箱具有以下几个特性:

第一、其他用户以及互联网隔离,无法上网;

第二、支持最多 100MB 文件上传/下载;

第三、预装了 343 个库;

第四、支持持久会话。

f9bf29a6c7d6ca59161666c64a350d2d.png

通过反向工程(如上图)我们看到 Code Interpreter 的底层基座并不是基于 GPT-4,而是采用了新的微调大模型 gpt-4-code-interpreter,针对代码生成进行了微调。

此外,Code Interpreter 本质上一种 AI Agent(如下图),借助 LLM 大模型的推理能力,实现了代码的生成、代码的运行、代码的异常处理等落地执行工作。

26d629e8780ff1bcbaf2878fca9e1e80.png

Code Interpreter = LLM + Planning + Memory + Use Tools.

dc36365b0350e0fa8f765cdd9d27603c.png

Code Interpreter 有输入模块,支持输入文本、文件、图片、视频等结构化和非结构化数据。

Code Interpreter 的规划能力借助 ReAct 思维链模式来把代码生成、代码运行等复杂工作拆分成简单工作。比如针对用户 Prompt 先思考(Thought)给出执行步骤,然后进行行动(Action),最后通过观察(Observation)执行结果是否完成复杂任务。

Code Interpreter 的使用工具主要是 Python 的 SandBox 沙箱环境,用于 Python 代码的自动执行。

Code Interpreter 在执行过程中借助于 Memory 记忆能力实现子任务的通信和协作。

总之,掌握好 Coder Interpreter 的技术架构和实现原理,对于 IT 人来说是一项非常重要的技能,它可以让您的 LLM 业务研发更高效和创新。

2

超干货 Code Interpreter 技术实战直播

为了帮助同学们掌握好 AI Agent 技术架构和应用案例实战,明晚20点,我会开一场直播和同学们深度聊聊:

    第一、Code Interpreter 应用场景解析

    第二、Code Interpreter 技术架构深度剖析

    第三、基于 LangChain 实现 Code Interpreter 

    第四、Code Interpreter 架构实践中的难点及解决方案

请同学点击下方按钮预约直播,咱们明晚20点不见不散哦~~

近期直播:基于从原理到实现教你做出一个 Code Interpreter

END

这篇关于从原理到实现教你做一个Code Interpreter的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/450655

相关文章

Qt把文件夹从A移动到B的实现示例

《Qt把文件夹从A移动到B的实现示例》本文主要介绍了Qt把文件夹从A移动到B的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录如何移动一个文件? 如何移动文件夹(包含里面的全部内容):如何删除文件夹:QT 文件复制,移动(

Flask 验证码自动生成的实现示例

《Flask验证码自动生成的实现示例》本文主要介绍了Flask验证码自动生成的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习... 目录生成图片以及结果处理验证码蓝图html页面展示想必验证码大家都有所了解,但是可以自己定义图片验证码

VSCode配置Anaconda Python环境的实现

《VSCode配置AnacondaPython环境的实现》VisualStudioCode中可以使用Anaconda环境进行Python开发,本文主要介绍了VSCode配置AnacondaPytho... 目录前言一、安装 Visual Studio Code 和 Anaconda二、创建或激活 conda

使用mvn deploy命令上传jar包的实现

《使用mvndeploy命令上传jar包的实现》本文介绍了使用mvndeploy:deploy-file命令将本地仓库中的JAR包重新发布到Maven私服,文中通过示例代码介绍的非常详细,对大家的学... 目录一、背景二、环境三、配置nexus上传账号四、执行deploy命令上传包1. 首先需要把本地仓中要

JAVA封装多线程实现的方式及原理

《JAVA封装多线程实现的方式及原理》:本文主要介绍Java中封装多线程的原理和常见方式,通过封装可以简化多线程的使用,提高安全性,并增强代码的可维护性和可扩展性,需要的朋友可以参考下... 目录前言一、封装的目标二、常见的封装方式及原理总结前言在 Java 中,封装多线程的原理主要围绕着将多线程相关的操

MySQL中实现多表查询的操作方法(配sql+实操图+案例巩固 通俗易懂版)

《MySQL中实现多表查询的操作方法(配sql+实操图+案例巩固通俗易懂版)》本文主要讲解了MySQL中的多表查询,包括子查询、笛卡尔积、自连接、多表查询的实现方法以及多列子查询等,通过实际例子和操... 目录复合查询1. 回顾查询基本操作group by 分组having1. 显示部门号为10的部门名,员

java导出pdf文件的详细实现方法

《java导出pdf文件的详细实现方法》:本文主要介绍java导出pdf文件的详细实现方法,包括制作模板、获取中文字体文件、实现后端服务以及前端发起请求并生成下载链接,需要的朋友可以参考下... 目录使用注意点包含内容1、制作pdf模板2、获取pdf导出中文需要的文件3、实现4、前端发起请求并生成下载链接使

kotlin中的模块化结构组件及工作原理

《kotlin中的模块化结构组件及工作原理》本文介绍了Kotlin中模块化结构组件,包括ViewModel、LiveData、Room和Navigation的工作原理和基础使用,本文通过实例代码给大家... 目录ViewModel 工作原理LiveData 工作原理Room 工作原理Navigation 工

Java的volatile和sychronized底层实现原理解析

《Java的volatile和sychronized底层实现原理解析》文章详细介绍了Java中的synchronized和volatile关键字的底层实现原理,包括字节码层面、JVM层面的实现细节,以... 目录1. 概览2. Synchronized2.1 字节码层面2.2 JVM层面2.2.1 ente

Linux下修改hostname的三种实现方式

《Linux下修改hostname的三种实现方式》:本文主要介绍Linux下修改hostname的三种实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux下修改ho编程stname三种方式方法1:修改配置文件方法2:hFvEWEostnamectl命