海艺思创

首页/ AI写作教程/ OpenAI Responses API 写作怎么用代码解释器分析数据

AI写作教程

OpenAI Responses API 写作怎么用代码解释器分析数据

需要把表格结果写成运营报告或数据解读时,先让模型使用代码解释器完成计算,再要求它只根据计算输出写作,能减少把猜测当成结论的风险。

OpenAI Responses API 写作怎么用代码解释器分析数据

准备

这套流程适合已有一份小型表格或统计结果、需要产出分析文章的场景。核心原则是分两步:先计算并保留结果,再根据结果写正文。不要让正文阶段重新估算数字。

  • 准备字段清楚的数据,例如日期、渠道、访问量、订单量和收入。
  • 先确定要回答的问题,例如“哪个渠道收入最高”“本周与上周差多少”。
  • 在请求中声明代码解释器,并通过 include 请求返回代码执行输出。
  • 给正文设置边界:仅引用已计算出的数值;缺少数据时明确说明缺口。

分步操作

  1. 先把数据整理成可读文本。下面示例直接把 CSV 内容放进任务中,便于先跑通流程;真实项目应保留原始文件和本次请求内容,方便复核。

    from openai import OpenAI
    
    client = OpenAI()
    
    csv_text = """channel,visits,orders,revenue
    search,1200,48,9600
    social,800,20,3000
    email,400,24,5400
    """
    
    response = client.responses.create(
        model="YOUR_MODEL_ID",
        tools=[{"type": "code_interpreter"}],
        include=["code_interpreter_call.outputs"],
        instructions="你是数据分析助手。先使用代码解释器计算总计、各渠道转化率和收入占比。不得猜测缺失数据。完成计算后,单独列出可供写作引用的结论及其数值。",
        input="请分析以下 CSV 数据:\n" + csv_text
    )
    
    print(response.output_text)
    
  2. 检查响应里的文字结论和代码执行输出。Responses API 的 include 参数可请求返回代码解释器调用的输出。把其中的计算结果保存为本次任务的分析记录,不要只保存最后一段自然语言。

  3. 确认关键计算。至少人工复算一项:例如收入总额是否等于各渠道收入之和,转化率的分母是否为 visits。发现疑问时,带着具体问题重新请求计算,不要直接改正文里的数字。

  4. 再发起写作请求。将已经确认的结论作为唯一数据依据,并要求每个数字都对应一条结论。需要让输出字段稳定时,可结合结构化检查方法在应用侧校验标题、摘要和正文。

    facts = """已核对的分析结论:
    - 总访问量:2400
    - 总订单量:92
    - 总收入:18000
    - search 收入:9600,收入占比约 53.3%
    - email 转化率:6.0%
    - social 转化率:2.5%
    """
    
    article = client.responses.create(
        model="YOUR_MODEL_ID",
        instructions="你是运营报告编辑。只能使用输入中的已核对结论,不得补充原因、趋势或外部事实。数字保留原有精度;无法支持的判断写为待验证。输出包含标题、摘要和三个小节。",
        input="根据以下结论写一篇简短运营分析:\n" + facts
    )
    
    print(article.output_text)
    
  5. 把正文中的每个数字回指到分析记录。数字能对应就保留;对应不上就删除、改成待验证,或回到计算步骤重新分析。

可复制模板

数据任务:分析【数据范围】。
计算要求:
1. 计算【指标 1】、【指标 2】和【指标 3】。
2. 写清每个比率的分子与分母。
3. 遇到空值、重复值或无法计算的字段,单独列出,不得自行补值。
4. 输出“已核对结论”,每条包含指标名、数值、计算口径。

写作任务:
只根据“已核对结论”写【报告类型】。
每个数据句必须保留指标名和数值。
不得把相关性写成因果,不得添加数据中未出现的时间、对象或原因。
资料不足时使用“待验证”,不要给出确定判断。

例如,若 email 的转化率高于 social,可以写“在这份数据中,email 的转化率为 6.0%,social 为 2.5%”。不能仅凭这两个数值写成“email 内容导致转化更高”,因为原因并未由表格证明。

翻车怎么改

常见故障:正文里出现了计算输出没有的增长率或原因判断。原因:计算与写作混在同一条模糊指令中,模型可能把未提供的比较基期或业务背景补全。修正动作:把流程拆成“分析请求”和“写作请求”;写作请求只传入已核对结论,并明确禁止新增数字和因果解释。发布前再逐项比对正文数字与分析记录。

常见故障:代码执行完成了,但拿到的响应里看不到执行结果。原因:请求没有包含代码解释器调用输出。修正动作:在 include 中加入 code_interpreter_call.outputs,并在应用日志中保存响应的工具调用信息与最终正文。

完成前检查

  • 发布前验收:正文中每个数值、百分比和排名都能在已保存的分析记录中找到对应项。
  • 检查计算口径是否一致,例如转化率是否都使用同一个分母。
  • 检查是否把“数据表现”误写成“原因结论”。
  • 检查空值、异常值和缺失字段是否已明确标注,而不是被静默忽略。
  • 保存本次输入数据范围、请求参数、响应记录和最终稿,便于后续复查。

下一步

把这篇的方法练一遍

提示词和步骤可以带到创作里直接试做一版。

去创作 看同栏目更多