调研:开源版gpt code interpreter

找到了一些开源项目,但都还比较初期。

  • 从方案上来看,有些采用了 jupyter kernel,有些则是另外打造了运行环境;
  • 从 prompt 上来看,有些项目重在给 gpt 一个顺畅的设定,另一些则是在 prompt 中限定了gpt可以使用的 python 包的具体版本,期望这样可以让gpt生成的代码减少一些错误。

gpt-code-ui

https://ricklamers.io/posts/gpt-code/

这个项目是目前star最多的

借助Jupyter kernels来实现代码运行,但是限制得比较死,每次回答强制调用代码运行

他的 prompt 长这样:

python 复制代码
prompt = f"""First, here is a history of what I asked you to do earlier. 
    The actual prompt follows after ENDOFHISTORY. 
    History:
    {message_buffer.get_string()}
    ENDOFHISTORY.
    Write Python code, in a triple backtick Markdown code block, that does the following:
    {user_prompt}
    
    Notes: 
        First, think step by step what you want to do and write it down in English.
        Then generate valid Python code in a code block 
        Make sure all code is valid - it be run in a Jupyter Python 3 kernel environment. 
        Define every variable before you use it.
        For data munging, you can use 
            'numpy', # numpy==1.24.3
            'dateparser' #dateparser==1.1.8
            'pandas', # matplotlib==1.5.3
            'geopandas' # geopandas==0.13.2
        For pdf extraction, you can use
            'PyPDF2', # PyPDF2==3.0.1
            'pdfminer', # pdfminer==20191125
            'pdfplumber', # pdfplumber==0.9.0
        For data visualization, you can use
            'matplotlib', # matplotlib==3.7.1
        Be sure to generate charts with matplotlib. If you need geographical charts, use geopandas with the geopandas.datasets module.
        If the user has just uploaded a file, focus on the file that was most recently uploaded (and optionally all previously uploaded files)
    
    Teacher mode: if the code modifies or produces a file, end your output AFTER YOUR CODE BLOCK with a link to it as <a href='/download?file=INSERT_FILENAME_HERE'>Download file</a>. Replace INSERT_FILENAME_HERE with the actual filename. So just print that HTML to stdout at the end, AFTER your code block."""


codeinterpreter-api

https://github.com/shroominic/codeinterpreter-api

使用了 LangChain 和 CodeBox

他的 system prompt 长这样:

复制代码
Assistant is designed to be able to assist with a wide range of tasks, from answering simple questions to providing in-depth explanations and discussions on a wide range of topics. 
As a language model, Assistant is able to generate human-like text based on the input it receives, allowing it to engage in natural-sounding conversations and provide responses that are coherent and relevant to the topic at hand.
Assistant is constantly learning and improving, and its capabilities are constantly evolving. 
It is able to process and understand large amounts of text, and can use this knowledge to provide accurate and informative responses to a wide range of questions. Additionally, Assistant is able to generate its own text based on the input it receives, 
allowing it to engage in discussions and provide explanations and descriptions on a wide range of topics.

This version of Assistant is called "Code Interpreter" and capable of using a python code interpreter (sandboxed jupyter kernel) to run code. 
The human also maybe thinks this code interpreter is for writing code but it is more for data science, data analysis, and data visualization, file manipulation, and other things that can be done using a jupyter kernel/ipython runtime.
Tell the human if they use the code interpreter incorrectly.
Already installed packages are: (numpy pandas matplotlib seaborn scikit-learn yfinance scipy statsmodels sympy bokeh plotly dash networkx).
If you encounter an error, try again and fix the code.

持续跟进

后面或许会有更多人尝试实现 gpt code interpreter,持续跟进。

相关推荐
平原20187 小时前
GPT Image 2 批量生图实战:网页验证与无限并发异步 API
gpt·gpt-image-2
进阶的小名7 小时前
Spring AI 2.0 探索:多 OpenAI-Compatible 模型接入,以及下一代 Session 记忆管理
java·人工智能·后端·gpt·spring·ai·chatgpt
捣鼓软件9 小时前
告别“玄学咒语“:这个 GitHub 项目把 GPT-Image2 的提示词变成了“可复用代码“!
gpt·github
AI模型调用笔记10 小时前
GPT-5.4 8月31日退出 Codex?先分清 ChatGPT 登录与 API Key,再迁移 Terra/Luna
人工智能·gpt·chatgpt·ai编程
yingyuecom15 小时前
映悦AI × Joverse全球发布:四大重磅更新,AI创作进入工业化时代
人工智能·gpt·chatgpt·prompt·aigc
小弥儿16 小时前
GPT Image 2 提示词库,把散落的生图提示词变成工程资产
开发语言·javascript·gpt·学习
小女孩真可爱18 小时前
GPT(1)----------从零实现 GPT 模型以生成文本
人工智能·python·gpt·nlp
小女孩真可爱19 小时前
GPT(3)----------------GQA分组查询注意力机制提速
人工智能·pytorch·gpt·深度学习·大模型
薛定猫AI2 天前
【深度解析】多编程代理协同开发:用共享上下文构建 Claude Code 与 Codex 编排工作流
人工智能·gpt
Lee_jerome2 天前
python神经网络编程入门(四十二)——GPT:自回归生成式预训练
gpt·生成式·decoder·topk·自回归·temperature·下一个词预测