当前位置: 首页 > article >正文

OpenAI 实战进阶教程 - 第二节:生成与解析结构化数据:从文本到表格

目标
  • 学习如何使用 OpenAI API 生成结构化数据(如 JSON、CSV 格式)。
  • 掌握解析数据并导出表格文件的技巧,以便适用于不同实际场景。

场景背景

假设你是一名开发人员,需要快速生成一批产品信息列表(如名称、价格、描述),并将这些信息导出为 CSV 文件供其他系统使用。


一、生成结构化数据(JSON 格式)

代码示例:生成产品信息列表

import openai
import json


# 设置 API 密钥
openai.api_key = "Your_API_Key"

# 定义 API 请求参数
prompt = """
Generate a list of 5 products with the following attributes:
- Product Name
- Price (in USD)
- Short Description
Return the result as a JSON array.
"""

# 调用 OpenAI API
response = openai.ChatCompletion.create(
    model="gpt-4",
    messages=[
        {"role": "user", "content": prompt}
    ],
    max_tokens=300,
    temperature=0.5
)

# 解析生成结果
generated_text = response['choices'][0]['message']['content']

try:
    product_data = json.loads(generated_text)
    if isinstance(product_data, dict):
        product_data = [product_data]
    print("Parsed Data:", product_data)
except json.JSONDecodeError:
    print("Failed to parse JSON. Check API response format.")




代码说明
  1. 模型选择:使用 gpt-4 生成高质量、结构化的产品数据。
  2. 请求内容 prompt:要求返回 JSON 数组以降低解析出错的可能性。
  3. 解析数据 json.loads():将返回的 JSON 字符串转换为 Python 列表格式。

输出示例
[
  {
    "Product Name": "Smartphone X10",
    "Price": 499,
    "Short Description": "A powerful smartphone with advanced features."
  },
  {
    "Product Name": "Wireless Earbuds Z",
    "Price": 79,
    "Short Description": "High-quality sound with noise cancellation."
  },
  ...
]

二、导出数据到 CSV 文件

代码示例:导出生成数据为 CSV 文件

# 确保数据为列表格式
if isinstance(product_data, list):
    with open("products.csv", "w", newline="") as file:
        writer = csv.DictWriter(file, fieldnames=["Product Name", "Price", "Short Description"])
        writer.writeheader()
        writer.writerows(product_data)
    print("Data successfully saved to products.csv")
else:
    print("No valid data to save.")


代码说明
  1. csv.DictWriter():将字典格式数据写入 CSV 文件。
  2. writer.writeheader():写入表头。
  3. writer.writerows():写入数据行。

三、实际应用案例

1. 数据自动生成

  • 市场营销:批量生成商品描述以加快推广文案输出。
  • 数据分析:生成模拟数据进行测试和建模。

2. 数据导出与分析

  • 自动生成客户报告并导出为 Excel/CSV 格式。
  • 将表格数据上传到数据库进行分析。

小结
  • 通过 OpenAI 生成结构化数据(如 JSON 格式)可以显著提高数据处理效率。
  • 解析生成结果并导出为 CSV 文件是实现数据自动化的重要环节。

练习题
  1. 生成订单数据:使用 OpenAI API 生成包含订单编号、商品名称、数量和总价的订单信息。
  2. 导出 Excel 文件:将生成的订单数据保存为 Excel 文件(可使用 pandas 库)。
  3. 增强提示词:尝试优化 prompt 以生成更丰富的产品数据,例如增加 CategoryStock Availability 字段。

http://www.kler.cn/a/530098.html

相关文章:

  • python小知识-jupyter lab
  • 扣子平台音频功能:让声音也能“智能”起来。扣子免费系列教程(14)
  • PhotoShop中JSX编辑器安装
  • Python-列表
  • CUDA学习-内存访问
  • 网站结构优化:加速搜索引擎收录的关键
  • 想品客老师的第天:类
  • Java集合+并发(部分)
  • MultiResUNet学习笔记(2019 Neural Networks【SCI 1区】)
  • 用结构加法3ax+1预测第4点的分布
  • 掌握Spring MVC异常处理的艺术
  • ICLR 2025收录论文:为什么动作分块对于机器人灵活性至关重要?
  • makailio-alias_db模块详解
  • 蓝桥杯备考:六大排序算法
  • Hive重点面试题
  • #define,源文件与头文件,赋值表达式
  • Java项目: 基于SpringBoot+mybatis+maven+mysql实现的疾病防控综合管理系统(含源码+数据库+毕业论文)
  • springboot中路径默认配置与重定向/转发所存在的域对象
  • react注意事项
  • 6 [新一代Github投毒针对网络安全人员钓鱼]
  • 【JDBC】数据库连接的艺术:深入解析数据库连接池、Apache-DBUtils与BasicDAO
  • 双指针算法思想——OJ例题扩展算法解析思路
  • 悬浮按钮和可交互提示的使用
  • 设计数据库表会考虑哪些内容?
  • 文字投影效果
  • C++ Primer 命名空间的using声明