【NLP 75、如何通过API调用智谱大模型】

事事忘记,事事等待,事事自愈

                                                —— 25.5.18

一、调用智谱大模型

zhipuai.model_api.invoke():调用智谱 AI 的大模型(如 ChatGLM)进行文本生成或推理,支持同步请求。

参数列表

参数名类型是否必需默认值说明
modelstr-要调用的模型名称(如 "chatglm_pro""chatglm_std""chatglm_lite")。
promptlist[dict]-对话历史列表,每个元素为字典,包含 "role""user" 或 "assistant")和 "content"(文本内容)。例如:[{"role": "user", "content": "你好"}]
temperaturefloat0.95控制生成文本的随机性(0.0 表示确定性输出,1.0 表示最大随机性)。
top_pfloat0.8核采样参数,控制生成时考虑的概率质量阈值。
max_tokensint无限制生成的最大 token 数,超过则截断。
streamboolFalse是否使用流式输出(True 表示流式,需配合回调处理)。
stoplist[str]None指定停止生成的字符串列表。
userstr随机生成用户标识,用于区分不同用户。

返回值结构 

调用成功后返回一个字典,包含以下主要字段:

{"code": 200,  # 状态码(200表示成功)"msg": "ok",  # 消息描述"data": {"request_id": "xxx",  # 请求ID"task_id": "xxx",     # 任务ID"task_status": "SUCCESS",  # 任务状态"choices": [{"role": "assistant","content": "模型生成的回复内容"}],"usage": {"prompt_tokens": 10,    # 输入token数"completion_tokens": 20,  # 输出token数"total_tokens": 30      # 总token数}}
}

示例

import zhipuaizhipuai.api_key = "API_KEY"response = zhipuai.model_api.invoke(model="chatglm_pro",prompt=[{"role": "user", "content": "请介绍一下Python的列表推导式"}],temperature=0.7,top_p=0.8
)if response["code"] == 200:print(response["data"]["choices"][0]["content"])
else:print(f"Error: {response['msg']}")

二、实战示例:文章优化Agent + ZhiPuAPI

#coding:utf-8import os
import json
from zhipuai import ZhipuAI'''
利用agent思想优化文章
'''#pip install zhipuai
#https://open.bigmodel.cn/ 注册获取APIKey
def call_large_model(prompt):client = ZhipuAI(api_key="API_KEY") # 填写您自己的APIKeyresponse = client.chat.completions.create(model="glm-3-turbo",  # 填写需要调用的模型名称messages=[{"role": "user", "content": prompt},],)response_text = response.choices[0].message.contentreturn response_textdef theme_analysis_agent(article_text):# 向大模型提问进行文章分析prompt_analysis = f"请分析并输出以下文章的主题:{article_text}"# 调用大模型接口,假设返回的结果是一个字典,包含结构和主题信息theme_analysis_result = call_large_model(prompt_analysis)return theme_analysis_resultdef language_optimization_agent(article_text, theme_analysis_result):# 根据文章分析结果构建提示词prompt_language = f"请检查下面这篇文章中的语法错误和用词不当之处,并提出优化建议。建议要尽量简练,不超过100字。\n\n文章主题:{theme_analysis_result}\n\n文章内容:{article_text}"language_optimization_suggestions = call_large_model(prompt_language)return language_optimization_suggestionsdef content_enrichment_agent(article_text, theme_analysis_result):# 根据文章分析结果构建提示词prompt_content = f"请阅读下面这篇文章,根据主题为该文章提出可以进一步扩展和丰富的内容点或改进建议,比如添加案例、引用数据等。建议要尽量简练,不超过100字。\n\n文章主题:{theme_analysis_result}\n\n文章内容:{article_text}"content_enrichment_suggestions = call_large_model(prompt_content)return content_enrichment_suggestionsdef readability_evaluation_agent(article_text, theme_analysis_result):# 根据文章分析结果构建提示词prompt_readability = f"请阅读下面这篇文章,根据主题评估该文章的可读性,包括段落长度、句子复杂度等,提出一些有助于文章传播的改进建议。建议要尽量简练,不超过100字。\n\n文章主题:{theme_analysis_result}\n\n文章内容:{article_text}"readability_evaluation_result = call_large_model(prompt_readability)return readability_evaluation_resultdef comprehensive_optimization_agent(article, theme_analysis_result, language_optimization_suggestions, content_enrichment_suggestions, readability_evaluation_result):# 合并结果的逻辑可以是将各个部分的建议整理成一个结构化的文档final_optimization_plan = f"请阅读下面这篇文章,以及若干个负责专项优化的agent给出的改进建议,重写这篇文章,提升文章的整体质量。\n\n文章原文:{article}\n\n文章主题分析:{theme_analysis_result}\n\n语言优化建议:{language_optimization_suggestions}\n\n内容丰富建议:{content_enrichment_suggestions}\n\n可读改进建议:{readability_evaluation_result}。\n\n优化后文章:"final_optimization_result = call_large_model(final_optimization_plan)return final_optimization_resultarticle = """
2024年8月20日,国产游戏《黑神话:悟空》正式上线,迅速引发了全网的热议与追捧,其火爆程度令人惊叹。黑悟空之所以能如此之火,原因是多方面的。
从文化内涵来看,《黑神话:悟空》深深扎根于中国传统文化。《西游记》作为中国文学的经典之作,孙悟空更是家喻户晓的英雄形象,承载着无数国人的童年回忆和文化情感。该游戏以孙悟空为主角,让玩家能够在游戏中亲身扮演齐天大圣,体验其神通广大与英勇无畏,这种文化认同感和情感共鸣是黑悟空火爆的重要基础。它不仅仅是一款游戏,更像是一场文化的回归与盛宴,让玩家在游戏的世界里重新领略中国神话的魅力,使得传统文化以一种全新的、生动的方式呈现在大众面前。
在视觉呈现方面,黑悟空堪称一场视觉盛宴。制作团队不惜投入大量的时间和精力,运用先进的游戏制作技术,精心打造了美轮美奂的游戏画面。从细腻逼真的环境场景,到栩栩如生的角色形象,再到炫酷华丽的技能特效,每一个细节都展现出了极高的制作水准。无论是神秘奇幻的山林洞穴,还是气势恢宏的天庭宫殿,都仿佛让玩家身临其境,沉浸在一个充满想象力的神话世界之中。这种极致的视觉体验,极大地满足了玩家对于游戏画面品质的追求,也是吸引众多玩家的关键因素之一。
游戏品质上,黑悟空也达到了相当高的水平。它拥有丰富多样且极具挑战性的关卡设计,玩家需要运用智慧和技巧,不断探索、战斗,才能逐步推进游戏进程。角色的技能系统丰富且独特,玩家可以通过不同的技能组合,发挥出孙悟空的各种强大能力,增加了游戏的可玩性和策略性。同时,游戏的剧情紧凑且富有深度,在遵循原著故事框架的基础上,进行了大胆的创新和拓展,为玩家呈现了一个既熟悉又充满新鲜感的西游世界,让玩家在享受游戏乐趣的同时,也能感受到一个精彩绝伦的故事。
再者,宣传推广策略也为黑悟空的火爆添了一把柴。从 2020 年开始,制作方每年 8 月 20 日都会公开最新的实机视频,这些视频在网络上广泛传播,引发了大量关注和讨论,成功地为游戏上线预热造势。在社交媒体上,关于黑悟空的话题热度持续攀升,玩家们纷纷自发地宣传分享,形成了强大的传播效应。此外,针对海外市场,黑悟空也积极开展宣传活动,通过号召海外网友参与视频投稿、与博主合作推广等方式,有效地扩大了游戏在国际上的影响力。
《黑神话:悟空》的火爆并非偶然,而是其在文化内涵、视觉呈现、游戏品质以及宣传推广等多个方面共同发力的结果。它的成功,不仅为国产游戏树立了新的标杆,也证明了中国游戏产业在技术和创意上的巨大潜力。相信在黑悟空的带动下,未来会有更多优秀的国产游戏涌现,推动中国游戏产业不断向前发展,让中国的游戏文化在全球舞台上绽放更加耀眼的光芒。同时,黑悟空也为传统文化的传承与创新提供了新的思路和途径,让传统文化在现代社会中焕发出新的活力与生机。它不仅仅是一款游戏的成功,更是中国文化与现代科技融合发展的一个精彩范例,其影响力必将深远而持久。
"""theme_analysis_result = theme_analysis_agent(article)
language_optimization_suggestions = language_optimization_agent(article, theme_analysis_result)
content_enrichment_suggestions = content_enrichment_agent(article, theme_analysis_result)
readability_evaluation_result = readability_evaluation_agent(article, theme_analysis_result)
final_optimization_plan = comprehensive_optimization_agent(article, theme_analysis_result, language_optimization_suggestions, content_enrichment_suggestions, readability_evaluation_result)
results = {"主题分析结果": theme_analysis_result, "语言优化建议": language_optimization_suggestions, "内容丰富建议": content_enrichment_suggestions, "可读性评价结果": readability_evaluation_result, "最终优化方案": final_optimization_plan}
#存储json文件
with open('results.json', 'w', encoding='utf-8') as f:json.dump(results, f, ensure_ascii=False, indent=4)print(f"最终优化方案:{final_optimization_plan}")

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/81859.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【jvm第0集】jvm学习路线指南

jvm学习路线指南 分享jvm学习路线指南,每个模块深入学习都要花费很多时间,但这个是每个java程序员的必修之路,大家可以跟着我的文章学习,可以不精,但必须懂。因为等你需要解决jvm相关问题的时候,你已经知道…

企业终端设备的安全管控

企业终端设备的安全管控是信息安全体系中的重要环节,涉及从设备准入到数据防护的全生命周期管理。 以下是一套系统化的解决方案,涵盖技术、管理和人员三个维度: 一、终端设备全生命周期管控 设备准入控制 802.1X网络认证:对接企业…

Flink SQL 计算实时指标同比的实现方法

在 Flink SQL 中计算实时指标的同比(Year-on-Year),核心是通过时间窗口划分周期(如日、月、周),并关联当前周期与去年同期的指标值。以下是结合流数据处理特性的具体实现方法,包含数据准备、窗口聚合、历史数据关联等关键步骤。 一、同比的定义与场景 同比指当前周期指…

架构的设计

搭建架构的最低前提 1.设计清晰: 需求文档: 有哪些界面 每个界面提够了哪些功能 这些功能是怎样操作的 会有哪些反馈 2.技术: 写架构的同学:这次项目设计的技术 都要有料及(用到的技术有哪些特点 有哪些缺点&…

Mysql varchar类型字段存储的数据末尾带空格,数据过滤不及预期问题

Mysql varchar类型字段存储的数据末尾带空格,数据过滤不及预期问题 引分析 引 最近在项目上遇到一个数据过滤问题,有一批数据,字段末尾多了一个空格,在最后提交的时候被java后端的equals比较校验不匹配,导致业务流程阻…

Debezium TableSchemaBuilder详解

Debezium TableSchemaBuilder详解 1. 类的作用与功能 1.1 核心作用 TableSchemaBuilder是Debezium中负责构建表Schema的核心类,主要功能包括: Schema构建:将数据库表结构转换为Kafka Connect的Schema定义主键处理:生成表的主键Schema值Schema处理:生成表的非主键字段Sc…

P1090 [NOIP 2004 提高组] 合并果子

P1090 [NOIP 2004 提高组] 合并果子 - 洛谷 #include <bits/stdc.h> using namespace std; int main() {int n;cin >> n;priority_queue<int, vector<int>, greater<int>> pq; //小根堆for (int i 1; i < n; i) {int x;cin >> x;pq.pu…

《量子雷达》学习(1) 2025.5.20

《量子雷达》深度解析&#xff1a;理论、技术与未来启示 一、书籍核心内容与理论框架 Marco Lanzagorta的《量子雷达》从量子力学与经典电磁理论的融合视角出发&#xff0c;系统构建了量子雷达探测的理论体系。全书以量子态的传输、散射与检测为核心&#xff0c;重新定义了雷…

支持向量存储:PostgresSQL及pgvector扩展详细安装步骤!老工程接入RAG功能必备!

之前文章和大家分享过&#xff0c;将会出一篇专栏&#xff08;从电脑装ubuntu系统&#xff0c;到安装ubuntu的常用基础软件&#xff1a;jdk、python、node、nginx、maven、supervisor、minio、docker、git、mysql、redis、postgresql、mq、ollama等&#xff09;&#xff0c;目前…

uni-app(2):页面

1 页面简介 uni-app项目中&#xff0c;一个页面就是一个符合Vue SFC规范的 vue 文件。 在 uni-app js 引擎版中&#xff0c;后缀名是.vue文件或.nvue文件。 这些页面均全平台支持&#xff0c;差异在于当 uni-app 发行到App平台时&#xff0c;.vue文件会使用webview进行渲染&…

Unity异步加载image的材质后,未正确显示的问题

简述&#xff1a; 此问题涉及到Unity的UI刷新机制 问题描述&#xff1a; 如图所示&#xff0c;想要实现在打开新的界面时候&#xff0c;通过修改材质的方式&#xff0c;修改image的显示内容。 明明已经给image添加上材质了&#xff0c;可还是一片空白&#xff1f; 先看看代…

互联网大厂Java面试场景:从缓存到容器化的技术问答

场景&#xff1a;互联网大厂Java面试之旅 面试官&#xff1a;严肃的技术专家 应聘者&#xff1a;搞笑的水货程序员明哥 第一轮&#xff1a;缓存技术与数据库优化 面试官&#xff1a;明哥&#xff0c;你能谈谈Redis的常见使用场景和一些优化技巧吗&#xff1f; 明哥&#xf…

如何分析动态采样引起的计划不稳定 | OceanBase SQL 调优实践

这篇博客涉及两个知识点&#xff0c;一个是动态采样&#xff0c;另一个是 DAS 执行。 用户的问题和相关结论 我们看看用户在OceanBase 社区论坛发帖中提出的疑问及其所得出的结论。 问题&#xff1a;收集统计信息之前&#xff0c;为什么会出现计划不稳定的情况&#xff1f; …

TypeScript 泛型讲解

如果说 TypeScript 是一门对类型进行编程的语言&#xff0c;那么泛型就是这门语言里的&#xff08;函数&#xff09;参数。本章&#xff0c;我将会从多角度讲解 TypeScript 中无处不在的泛型&#xff0c;以及它在类型别名、对象类型、函数与 Class 中的使用方式。 一、泛型的核…

19.备忘录模式:思考与解读

原文地址:备忘录模式&#xff1a;思考与解读 更多内容请关注&#xff1a;深入思考与解读设计模式 引言 在软件开发中&#xff0c;尤其是当对象的状态会经历多个变化时&#xff0c;你是否遇到过一个问题&#xff1a;如何保存对象的某一时刻的状态&#xff0c;以便在未来的某个…

【运营商查询】批量手机号码归属地和手机运营商高速查询分类,按省份城市,按运营商移动联通电信快速分类导出Excel表格,基于WPF的实现方案

WPF手机号码归属地批量查询与分类导出方案 应用场景 ​​市场营销​​&#xff1a;企业根据手机号码归属地进行精准营销&#xff0c;按城市或省份分类制定针对性推广策略​​客户管理​​&#xff1a;快速对客户手机号码进行归属地分类&#xff0c;便于后续客户关系管理​​数…

MySQL之函数

文章目录 函数字符串函数常见函数举例说明具体场景 数值函数常见函数举例说明具体场景 日期函数常见函数举例说明具体场景 流程函数常见函数举例说明具体场景 函数 函数 是指一段可以直接被另一段程序调用的程序或代码。 也就意味着&#xff0c;这一段程序或代码在MySQL中已经…

html,js获取扫码设备的输入内容

<script type"text/javascript"><!-- window.onload function () {// 获取扫描的二维码内容 var code ""; var lastTime, nextTime; var lastCode, nextCode; document.onkeypress function (e) { nextCode e.which; ne…

Nginx 配置 HTTPS 与 WSS 完整指南(最新推荐)

Nginx 配置 HTTPS 与 WSS 完整指南 一、准备工作 获取 SSL 证书 从可信机构&#xff08;如 Let’s Encrypt&#xff09;申请证书获得以下文件&#xff1a; 域名证书&#xff1a;domain.crt私钥文件&#xff1a;domain.key中间证书链&#xff1a;chain.crt 推荐合并证书链&…

选择合适的Azure数据库监控工具

Azure云为组织提供了众多服务&#xff0c;使其能够无缝运行应用程序、Web服务和服务器部署&#xff0c;其中包括云端数据库部署。Azure数据库能够与云应用程序实现无缝集成&#xff0c;具备可靠、易扩展和易管理的特性&#xff0c;不仅能提升数据库可用性与性能&#xff0c;同时…