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

[智能体-2]:openAI API详解

下面从核心概念→认证→接口→参数→流式→函数调用→计费→国内兼容→最佳实践把 OpenAI API 讲透。一、OpenAI API 是什么OpenAI API 一套标准化的 RESTful 大模型调用协议基于 HTTP/JSON提供文本对话GPT-4o/3.5文生图 / 图编辑DALL・E 3语音转文字 / 文字转语音Whisper/TTS向量嵌入Embeddings工具调用 / 函数调用Function Calling微调、文件、向量库、批量任务等核心价值不仅是 OpenAI 自己用国内 99% 大模型千问、DeepSeek、星火、Kimi都兼容此协议你写一套代码换个base_urlapi_key就能切换模型。二、基础架构与认证1. 基础地址Base URLOpenAI 官方https://api.openai.com/v1通义千问https://dashscope.aliyuncs.com/compatible-mode/v1DeepSeekhttps://api.deepseek.com讯飞星火https://spark-api-open.xf-yun.com/v1Kimihttps://api.moonshot.cn/v12. 认证方式必懂所有请求必须带Bearer TokenAPI KeyhttpAuthorization: Bearer sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Content-Type: application/jsonKey 以sk-开头仅生成时可见一次必须保存。绝对不能硬编码在前端 / Git / 客户端只能存在环境变量或密钥管理服务OpenAI。3. Python 官方 SDK最常用bash运行pip install openaipython运行from openai import OpenAI import os # 初始化客户端切换模型只改这两行 clientOpenAI( api_keyos.getenv(OPENAI_API_KEY), # 或 QWEN_API_KEY/DEEPSEEK_API_KEY base_urlos.getenv(OPENAI_BASE_URL) # 国内模型替换成对应地址 )三、核心接口Chat Completions对话最常用接口对应/v1/chat/completions支持多轮对话、流式输出、函数调用。1. 极简调用非流式python运行responseclient.chat.completions.create( modelgpt-4o, # 国内模型如 qwen-turbo、deepseek-chat messages[ {role: system, content: 你是 helpful 助手}, {role: user, content: 什么是 OpenAI API} ], temperature0.7, max_tokens1024 ) print(response.choices[0].message.content)2. 请求参数全解高频表格参数类型说明常用值modelstring模型 ID必填gpt-4o、gpt-3.5-turbo、qwen-turbomessagesarray对话历史必填role: system/user/assistanttemperaturefloat随机性0~20 严谨1 平衡2 发散max_tokensint最大输出长度1024、4096看模型上限top_pfloat核采样0~10.9常用frequency_penaltyfloat重复惩罚-2~20.1减少重复presence_penaltyfloat主题新鲜度-2~20streambool流式输出逐字返回False/Truestoparray停止词[\n\n]logit_biasdict强制 / 禁止 某些词{100257: -100}3. 响应结构json{ id: chatcmpl-xxx, object: chat.completion, created: 1758423456, model: gpt-4o, choices: [ { index: 0, message: { role: assistant, content: OpenAI API 是... }, finish_reason: stop } ], usage: { prompt_tokens: 15, completion_tokens: 32, total_tokens: 47 } }usage计费核心输入 / 输出 token 分开算钱。四、流式输出Streaming必学解决 “等待半天不出结果”逐字返回SSE 协议。python运行streamclient.chat.completions.create( modelgpt-4o, messages[{role: user, content: 讲个长故事}], streamTrue # 开启流式 ) for chunk in stream: if chunk.choices[0].delta.content: print(chunk.choices[0].delta.content, end, flushTrue)五、函数调用Function Calling高级让模型自动调用你的工具 / 接口如查天气、数据库、API。python运行# 1. 定义工具 tools [ { type: function, function: { name: get_weather, description: 获取指定城市天气, parameters: { type: object, properties: {city: {type: string, description: 城市名}}, required: [city] } } } ] # 2. 调用模型让它决定是否调用工具 responseclient.chat.completions.create( modelgpt-4o, messages[{role: user, content: 北京今天天气}], toolstools, tool_choiceauto ) # 3. 执行工具并返回结果 tool_callresponse.choices[0].message.tool_calls[0] if tool_call.function.name get_weather: import json argsjson.loads(tool_call.function.arguments) weatherget_weather(args[city]) # 你的函数 # 把结果发回模型生成自然语言回答六、其他常用接口1. 嵌入向量Embeddings用于检索、RAG、语义匹配python运行responseclient.embeddings.create( modeltext-embedding-3-small, input[OpenAI API 教程, 大模型接口] ) vectorresponse.data[0].embedding # 1536 维向量2. 文生图DALL・E 3python运行responseclient.images.generate( modeldall-e-3, prompt一只戴墨镜的猫赛博朋克风格, size1024x1024, n1 ) print(response.data[0].url)3. 语音转文字Whisperpython运行audio_fileopen(speech.mp3, rb) transcriptionclient.audio.transcriptions.create( modelwhisper-1, fileaudio_file ) print(transcription.text)七、计费Token 计算规则按输入 TokenPrompt 输出 TokenCompletion计费。估算1 Token ≈ 4 个英文字符 ≈ 1 个汉字。示例GPT-4o输入 $5/1M Token输出 $15/1M Token通义千问免费额度 按量计费更便宜八、国内大模型兼容重点1. 兼容原理国内厂商完全复用 OpenAI 的请求 / 响应格式仅需替换base_url换成厂商兼容地址api_key换成厂商 Keymodel换成厂商模型名如qwen-turbo、deepseek-chat2. 一键切换代码示例python运行# .env 文件 # QWEN_BASE_URLhttps://dashscope.aliyuncs.com/compatible-mode/v1 # QWEN_API_KEYsk-xxx # DEEPSEEK_BASE_URLhttps://api.deepseek.com # DEEPSEEK_API_KEYsk-yyy import os from openai import OpenAI def get_client(vendorqwen): return OpenAI( api_keyos.getenv(f{vendor.upper()}_API_KEY), base_urlos.getenv(f{vendor.upper()}_BASE_URL) ) # 用千问 clientget_client(qwen) # 用 DeepSeek clientget_client(deepseek)九、最佳实践避坑Key 安全永远用环境变量不要硬编码 / 上传 GitOpenAI。参数调优写代码 / 严谨任务temperature0创意写作temperature0.9~1.2流式优先用户端交互必须开 stream体验大幅提升。错误处理捕获APIError、RateLimitError、Timeout。多模型兼容基于 OpenAI 协议开发无缝切换国内模型。十、一句话总结OpenAI API 大模型的 “通用语言”官方用它国内千问 / DeepSeek / 星火 / Kimi 都兼容一套代码换base_urlapi_key即可切换模型掌握 Chat CompletionsStreamFunction Calling就能搞定 90% 应用场景。

相关文章:

[智能体-2]:openAI API详解

下面从核心概念→认证→接口→参数→流式→函数调用→计费→国内兼容→最佳实践,把 OpenAI API 讲透。一、OpenAI API 是什么OpenAI API 一套标准化的 RESTful 大模型调用协议,基于 HTTP/JSON,提供:文本对话(GPT-4o/3…...

Voice-Pro 免费开源杀疯了:语音翻译、AI克隆、人声分离、YouTube下载全打包,狂省上千元

你是否也曾想过做视频,英文视频翻译成中文发到国内,或者把自己做的中文视频配上地道的英文,扬帆出海? 然而,现实往往会给你迎头痛击: 工具太碎片 :用 yt-dlp 下载了视频,要用 Demu…...

低压电工-架空线路,室内线路

前置基础补充 线路核心定义电能输送用的电线线路统称电气线路,电工考证只重点学电力线路(送电、供电),不学控制线路(设备内部控制线)。电压基础 低压:1000V 及以下(日常家用、工厂…...

BarrageGrab:零依赖微服务架构的跨平台直播弹幕一体化采集系统

BarrageGrab:零依赖微服务架构的跨平台直播弹幕一体化采集系统 【免费下载链接】BarrageGrab 抖音快手bilibili直播弹幕wss直连,非系统代理方式,无需多开浏览器窗口 项目地址: https://gitcode.com/gh_mirrors/ba/BarrageGrab 在直播电…...

需求用例-成功保证

成功保证(success guarantee)说明了用例成功结束后项目相关人员的哪些利益得到了满足,用例可以通过执行主场景获得成功,也可以通过执行可选路径获得成功。成功保证通常是作为最小保证的补充内容:最小保证被满足以后, 第6章 前置条件、触发事件…...

G-Helper:轻量级开源硬件控制工具的深度技术解析

G-Helper:轻量级开源硬件控制工具的深度技术解析 【免费下载链接】g-helper Lightweight Armoury Crate alternative for Asus laptops with nearly the same functionality. Works with ROG Zephyrus, Flow, TUF, Strix, Scar, ProArt, Vivobook, Zenbook, Expertb…...

NVIDIA Profile Inspector完整指南:免费解锁显卡隐藏性能的终极工具

NVIDIA Profile Inspector完整指南:免费解锁显卡隐藏性能的终极工具 【免费下载链接】nvidiaProfileInspector 项目地址: https://gitcode.com/gh_mirrors/nv/nvidiaProfileInspector 你是否曾经想过,为什么你的NVIDIA显卡明明性能不错&#xff…...

seaborn实践

本文章基于豆包整理了使用seaborn生成若干典型图表的示例代码,可供学习seaborn使用。一、图表结果预览二、测试数据生成生成了两组数据,一组是银行贷款存款数据,一组是学生成绩数据,生成数据代码如下:-- 1. 创建数据库…...

在Windows通知栏悄悄学习:ToastFish让你的碎片时间变成单词记忆神器

在Windows通知栏悄悄学习:ToastFish让你的碎片时间变成单词记忆神器 【免费下载链接】ToastFish 一个利用摸鱼时间背单词的软件。 项目地址: https://gitcode.com/GitHub_Trending/to/ToastFish 想象一下这样的场景:你正在办公室里忙碌地处理文件…...

ZIP文件怎么加密?3种方法可行

如果你想给ZIP文件设置密码保护,那就一定要安装解压缩软件,因为Windows自带的ZIP压缩,点右键选“发送到”→“压缩文件夹”——这个功能不支持加密。 那么我们可以选择常用的软件来给ZIP文件加密,方法都很简单,下面分…...

Midjourney拍立得风格失效预警:当--stylize值>800时,胶片颗粒算法将触发不可逆失真(附修复补丁)

更多请点击: https://intelliparadigm.com 第一章:Midjourney拍立得风格失效的本质洞察 当用户在 Midjourney 中反复使用 --style raw 或添加 Polaroid、 Instax、 instant film 等关键词却无法稳定生成具有真实拍立得质感的图像时,问题并…...

鸣潮自动化助手:5步轻松实现后台智能战斗与资源收集

鸣潮自动化助手:5步轻松实现后台智能战斗与资源收集 【免费下载链接】ok-wuthering-waves 鸣潮 后台自动战斗 自动刷声骸 一键日常 Automation for Wuthering Waves 项目地址: https://gitcode.com/GitHub_Trending/ok/ok-wuthering-waves 还在为每天重复刷声…...

【测试】一文读懂软件测试:新手真正需要的测试认知

📌 相关专栏 【Linux专栏】【C语言专栏】【测试专栏】 📌 相关文章推荐 【Linux】网络基础2---Socket编程预备【Linux 】网络基础1 哈喽~欢迎来到千余的小天地 ❤ 我会分享很多干货/日常,点个关注不迷路哦~ 👍 点赞 ⭐ 收藏 &…...

GPT-5.5不只是能写代码——ChatGPT Image 2模块“语义-结构-纹理“三级解耦机制详解

引言:图像生成能力的范式迁移过去两年,大模型的图像生成能力经历了从"能画"到"画对"的跃迁。早期的文生图模型普遍存在一个核心矛盾:用户想控制"画什么",模型却同时处理"画什么""怎…...

百度网盘限速破解:技术解析与实战应用深度剖析

百度网盘限速破解:技术解析与实战应用深度剖析 【免费下载链接】baidu-wangpan-parse 获取百度网盘分享文件的下载地址 项目地址: https://gitcode.com/gh_mirrors/ba/baidu-wangpan-parse 在云存储服务日益普及的今天,百度网盘作为国内用户最常用…...

Marshall新款Milton ANC头戴式耳机来袭:音质续航皆优,售价229美元!

Marshall推出新款Milton ANC头戴式耳机Marshall推出了最新款头戴式耳机——Milton ANC。这款耳机在音质、耐用性和电池续航方面都毫不妥协,售价为229美元。耳机特点与升级Marshall宣布推出全新的头戴式耳机Milton ANC。它承诺在不牺牲电池续航的前提下,带…...

路由算法的终极真相:为何“绝对最佳”是伪命题?从理论陷阱到工程实战的深度破局

路由算法的终极真相:为何“绝对最佳”是伪命题?从理论陷阱到工程实战的深度破局 摘要:在计算机网络的浩瀚星图中,路由选择算法如同指引数据包穿越迷雾的灯塔。然而,无数工程师和架构师曾陷入一个巨大的思维误区&#x…...

Soundcore Liberty 5 Pro系列耳塞:价格升级功能多样,通话降噪表现超出色!

产品线内差异:耳塞相同,充电盒不同此前,Soundcore价格最高的耳塞(不包括睡眠耳塞)是售价150美元的Liberty 4 Pro,但Liberty 5 Pro售价170美元,Liberty 5 Pro Max售价230美元,这已经进…...

FlashAttention 在昇腾NPU上到底快在哪?一次拆透 ops-transformer 的核心算子

这是一篇关于昇腾NPU上FlashAttention技术深度解析的CSDN博客文章。文章结合了您提供的网页信息(特别是ops-transformer仓库的上下文)以及深度学习算子优化的专业知识,旨在帮助开发者理解其原理、优势及在昇腾生态中的应用。 FlashAttention …...

《流畅的Python》读书笔记07(补充03): 对象引用、可变性和垃圾回收 - 深复制循环引用内存安全机制解析

Python的copy.deepcopy()函数在处理循环引用时,通过内部的备忘录(memo)字典机制来打破无限递归,确保复制过程能够正确终止。这个memo字典本身的设计就考虑了内存管理的安全性,在正常情况下不会导致内存泄漏。其核心机制…...

基于知识图谱InsightGraph — 让数据开口说话。

从Palantir的ontology思路出发,我们踩了一遍知识图谱的坑让数据从"分散的资产",变成"会分析、会归因的业务伙伴"💼你一定遇到过这些问题这份数据和其他系统能不能关联?问了三个人有三个答案运营问"为什么…...

【Qt学习】基本类型、日志输出、字符串、QVariant

文章目录基本数据类型日志输出Qt Creator中看日志单独控制台看日志字符串类型示例字符串拼接字符串长度QVariant示例变量相加自定义类型前文回顾: 【Qt学习】Windows上环境配置与项目初识 【Qt学习】三个窗口类、坐标系、内存回收 基本数据类型 Qt基本数据类型定义…...

如何在15分钟内搭建个人游戏串流服务器:Sunshine跨平台游戏串流终极指南

如何在15分钟内搭建个人游戏串流服务器:Sunshine跨平台游戏串流终极指南 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine 想要在任何设备上畅玩PC游戏大作吗&#xff1f…...

从游戏主机到云端:如何用Sunshine打造你的私人游戏串流服务器

从游戏主机到云端:如何用Sunshine打造你的私人游戏串流服务器 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine 你是否曾经想过,在客厅的电视上玩电脑游戏&am…...

SQLite Viewer:3分钟学会在线查看SQLite数据库的终极方案

SQLite Viewer:3分钟学会在线查看SQLite数据库的终极方案 【免费下载链接】sqlite-viewer View SQLite file online 项目地址: https://gitcode.com/gh_mirrors/sq/sqlite-viewer 想象一下,你收到一个SQLite数据库文件,需要立即查看其…...

真正的爱是接受对方本来的样子

武志红说:爱是如TA所是,而非如你所愿。真正的爱是接受对方本来的样子,而不是把对方改造成你想要的样子。爱是如TA所是意味着:你爱的是这个人本身,而不是你想象中的TA。你不需要改变对方来满足你的期望。你接受TA的优点…...

如何快速解锁QQ音乐加密音频的完整指南:QMCDecode工具终极解决方案

如何快速解锁QQ音乐加密音频的完整指南:QMCDecode工具终极解决方案 【免费下载链接】QMCDecode QQ音乐QMC格式转换为普通格式(qmcflac转flac,qmc0,qmc3转mp3, mflac,mflac0等转flac),仅支持macOS,可自动识别到QQ音乐下载目录&…...

三周、1.81倍、百亿:中国AI的压制性时刻

调用量飙升、百亿美元涌入、智能体密集落地——过去七天,中国AI正在改写全球游戏规则。与此同时,内容创作者的“AI红利窗口”也正在打开。连续三周,中国AI压住美国5月18日,OpenRouter最新数据显示,5月11日至17日当周&a…...

蚂蚁面试实录:手撕多头注意力到LoRA配置的九个坑

面试开场:写代码,别背公式蚂蚁AI应用开发岗面试一开始,面试官没有让我复述Transformer定义,而是直接说:“用PyTorch手写一个Multi-Head Attention,讲清楚Q、K、V的维度变化。”这种考察方式在蚂蚁很常见&am…...

如何3秒破解百度网盘提取码?这个智能工具让你告别繁琐搜索

如何3秒破解百度网盘提取码?这个智能工具让你告别繁琐搜索 【免费下载链接】baidupankey 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 还在为百度网盘资源下载卡在提取码环节而烦恼吗?每次找到心仪的学习资料或工作文件&#xff0…...