OpenAI API调用实践文本分类和内容生成

前言

了解了OpenAI API 基础调用实践后,接下来实现文本分类和内容生成的功能。

文本分类

文本分类是自然语言处理(NLP)中的一项基础任务,指的是将一段文本自动分配到预定义的类别或标签中的过程,例如提供一段或几段文本,模型进行进行分类

下面提供了两个文本,一个是科技类的,一个政治新闻,让AI进行基础的文本分类

还是原来的文件,用 python test_openai.py 运行

python 复制代码
import os 
from dotenv import load_dotenv 
from openai import OpenAI 

# 加载环境变量 
load_dotenv() 

# 初始化客户端 
client = OpenAI(api_key=os.getenv("OPENAI_API_KEY")) 


from openai import OpenAI
client = OpenAI()


response = client.chat.completions.create(
    model="gpt-5-nano",
    messages=[
        {"role": "system", "content": "你是一个文本分类助手。请将以下文本分类为:科技、体育、娱乐或政治。"},
        {"role": "user", "content": "SpaceX 成功发射了星舰,这是人类航天史上的重要里程碑。"}
    ]
)

print(f"分类结果: {response.choices[0].message.content}")

response2 = client.chat.completions.create(
    model="gpt-5-nano",
    messages=[
        {"role": "system", "content": "你是一个文本分类助手。请将以下文本分类为:科技、体育、娱乐或政治。"},
        {"role": "user", "content": "特朗普下令特种部队把委内瑞拉总统马杜罗给抓到了美国"}
    ]
)

print(f"分类结果: {response2.choices[0].message.content}")

运行结果是 科技 和 政治,没啥毛病

上面是简单文本,给它个稍微长点的文本看看,并且不提供类别,看看能不能分出个一二三

这是文本内容,将三段新闻合起来

小米中国区前市场部总经理王腾新公司"今日宜休"已启动公开招聘,引发关注。租客每年交租时闹着要减租:林女士告诉记者,她的房子位于上城区,"当时租客说自己生意不好,妈妈生病。"13岁男生校内死亡系心源性疾病:2026年1月11日,新蔡县联合调查组就"13岁男生校内死亡"事件发布最新通报

python 复制代码
response3 = client.chat.completions.create(
    model="gpt-5-nano",
    messages=[
        {"role": "system", "content": "你是一个文本分类助手。请将以下文本分类"},
        {"role": "user", "content": "小米中国区前市场部总经理王腾新公司"今日宜休"已启动公开招聘,引发关注。租客每年交租时闹着要减租:林女士告诉记者,她的房子位于上城区,"当时租客说自己生意不好,妈妈生病。"13岁男生校内死亡系心源性疾病:2026年1月11日,新蔡县联合调查组就"13岁男生校内死亡"事件发布最新通报"}
    ]
)

print(f"分类结果: {response3.choices[0].message.content}")

很奇怪的情况,怎么三段内容分成了四个,难道是数据格式问题?把数据格式改一下

小米中国区前市场部总经理王腾新公司'今日宜休'已启动公开招聘,引发关注。租客每年交租时闹着要减租:林女士告诉记者,她的房子位于上城区,'当时租客说自己生意不好,妈妈生病'。13岁男生校内死亡系心源性疾病:2026年1月11日,新蔡县联合调查组就'13岁男生校内死亡'事件发布最新通报

把文本内容里面的双引号的地方改了一下,改成单引号,然后再次运行

python 复制代码
response3 = client.chat.completions.create(
    model="gpt-5-nano",
    messages=[
        {"role": "system", "content": "你是一个文本分类助手。请将以下文本分类"},
        {"role": "user", "content": "小米中国区前市场部总经理王腾新公司'今日宜休'已启动公开招聘,引发关注。租客每年交租时闹着要减租:林女士告诉记者,她的房子位于上城区,'当时租客说自己生意不好,妈妈生病'。13岁男生校内死亡系心源性疾病:2026年1月11日,新蔡县联合调查组就'13岁男生校内死亡'事件发布最新通报"}
    ] 
)

print(f"分类结果: {response3.choices[0].message.content}")

这次就正常了,分成了三类,并且子标题描述相对准确

由此可见数据的质量对模型的影响是很大的,一个操作不好就变成智障了

好了,文本分类的功能效果大概了解了,接下来看下内容生成

内容生成

内容生成(Content Generation)也是自然语言处理(NLP)中的一项重要任务,指的是利用AI模型自动创建各种形式的文本内容的过程。与文本分类不同,内容生成是一个生成式任务,模型需要根据给定的输入(如提示、指令或上下文)创建全新的文本内容

内容生成对于我们日常来讲可就太常见了,例如现在的开发/产品日常让AI写代码,嘴遁一段文字或需求,或者输入一段需求,让AI写代码,或者问一些AI相关的问题,让AI生成对应的答案等

例如,下面继续调用 gpt-5-nano 模型,让它给 '草帽lufei' 写一段自我介绍和宣传文案

python 复制代码
response_gen = client.chat.completions.create(
    model="gpt-5-nano",
    messages=[
        {"role": "system", "content": "你是一个创意专业的文案撰写专家"},
        {"role": "user", "content": "请为'草帽lufei'这个研究AI Agent的公众号博主,写一段吸引人的自我介绍文案和宣传文案。"}
    ]
)

print(f"生成结果: {response_gen.choices[0].message.content}")

单纯文本相关调用的话,除了提示内容不一样,剩下的代码一毛一样,API调用是真简单,一行代码加个参数就行了,不得不感叹现在的AI模型能力是真强,看下输出结果

简单提示词的话,生成出来就仿佛是模板直接输出的一样,那种浓浓的专业感,浓浓的AI味儿,对于实际的我来讲,生成结果毛用没有

要是我自己写介绍自己的话,我即兴发挥一下

大家好,我是草帽lufei,一个有几年搬砖经验的开发吊毛,现在的主要关注方向就是Agent相关应用和开发相关的内容,平时主要还是用AI来搬砖,抽空看一些前沿的AI相关的技术,也进行一些相关技术的实践和学习,之前的个人签名是"用计算机创造美和艺术,用AI改变世界",现在的计划是,熟练的用好AI,及时更进AI相关的应用和相关的技术,自己不被公司第一波裁掉,有口饭吃就行

小结

目前复制改的python代码就那么两行,调用起来很简单,通过自己实际调用,能熟悉一下现在API的调用方式和参数怎么用,以及实际遇到的数据格式小问题对模型的理解,接下来将继续学习Prompt Engineering相关技巧

欢迎留言交流,如果觉得有帮助,可以点个赞支持一下

公众号:草帽lufei

相关推荐
梁辰兴2 小时前
百亿美元赌注变数,AI军备竞赛迎来转折点?
人工智能·ai·大模型·openai·英伟达·梁辰兴·ai军备竞赛
阿杰学AI7 小时前
AI核心知识75——大语言模型之MAS (简洁且通俗易懂版)
人工智能·ai·语言模型·自然语言处理·agent·多智能体协作·mas
laplace012310 小时前
Clawdbot 部署到飞书(飞连)使用教程(完整版)
人工智能·笔记·agent·rag·clawdbot
山顶夕景13 小时前
【LLM】多模态智能体Kimi-K2.5模型
llm·agent·多模态
yuanlulu13 小时前
Agent_Skills_完全教程「AI生成」
人工智能·大语言模型·agent·智能体·skill·claude code·opencode
玄同76514 小时前
LangChain v1.0 中间件深度解析:从 Callback 到 Middleware 的演进
人工智能·语言模型·自然语言处理·中间件·langchain·agent·智能体
roamingcode14 小时前
Cursor-memory-cli 自动化记忆提取的完整实现
运维·自动化·agent·memory·cursor·持久化记忆
陈希瑞14 小时前
OpenClaw部署与配置教程:在Mac mini上接入国产大模型与飞书
飞书·agent·openclawd
GJGCY1 天前
技术解析|中国智能体4类路径深度拆解,这类底座架构优势凸显
人工智能·经验分享·ai·agent·智能体·数字员工
玄同7651 天前
告别 AgentExecutor:LangChain v1.0+ Agent 模块深度迁移指南与实战全解析
人工智能·语言模型·自然语言处理·langchain·nlp·agent·智能体