【AIGC】ChatGPT开发者必备:如何获取 OpenAI 的 API Key

news2024/11/23 23:53:04

在这里插入图片描述

博客主页: [小ᶻZ࿆]
本文专栏: AIGC | ChatGPT

文章目录

  • 💯前言
  • 💯API Key的重要性
  • 💯获取API Key的基本步骤
  • 💯定价策略和使用建议
  • 💯小结


在这里插入图片描述


💯前言

  • 在现代应用开发中,获取OpenAI的API Key是开启自动化和集成开发的关键一步。拥有这个API Key,意味着你可以将OpenAI的强大能力无缝接入各种应用,无论是企业的微信公众号,还是其他程序,都能够通过API实现智能化升级。本文将详细介绍如何获取这一重要的API Key。
    OpenAI官方文档关于如何获取 OpenAI API Key在这里插入图片描述

💯API Key的重要性

  • API Key 是连接你的应用程序与 OpenAI 服务的桥梁,保障了数据传输的安全性。无论是自动化任务、数据分析,还是开发新的 AI 功能,API Key 都是实现这些功能不可或缺的部分。它确保了你能够安全、可靠地访问 OpenAI 的强大功能,并将其集成到各种应用场景中。
    在这里插入图片描述

💯获取API Key的基本步骤

  1. 访问OpenAI官网

    • 首先,进入OpenAI的官方文档网站,找到Dashboard部分并打开
      OpenAI官方文档
      在这里插入图片描述
  2. 找到API Key的获取页面

    • 在网站中,点击“API Keys”选项,进入API Key的管理页面。
      在这里插入图片描述
  3. 点击创建密钥

    • 设置密钥名称,点击生成。根据自己的需求,选择适合的服务等级。OpenAI提供了不同的服务选项,比如4K、16K(对应3.5等级)以及8K和32K(对应4等级)。这些Token值决定了AI的记忆能力,并影响生成内容的质量。
  4. 复制 API Key

    • 生成API Key后,它只会显示一次,所以务必要立即复制并妥善保存。
      在这里插入图片描述
  5. 如何使用API key

    • 可以参考OpenAI 的 API Key使用的官方文档:
      OpenAI API Key官方文档
      在这里插入图片描述

💯定价策略和使用建议

  • 在选择服务等级时,建议根据你的实际需求进行选择。如果你的应用不需要极高的记忆容量或复杂的 AI 处理,选择 3.5 等级的服务会更加经济实惠。与之相比,4 等级的服务虽然提供了更高质量的回答,但其成本也相应更高。因此,选定适合自己需求的服务等级不仅能够优化性能,还能节省开支。
    OpenAI API Key价格表
    在这里插入图片描述

  • GPT-4o 提供不同的定价等级,按输入和输出的Token数量计费。对于标准的API调用,输入Token的费用为 $0.00250/1K,输出Token的费用为 $0.01000/1K。而在使用批量API时,输入和输出Token的费用会有所减少。例如,使用批量API时,输入Token的费用会降低到 $0.00125/1K,输出Token则为 $0.00500/1K。这种定价结构允许开发者根据需求选择更具成本效益的调用方式。
    -

  • GPT-4o Mini 是GPT-4o的一个更加经济实惠的版本,它具有128K上下文的限制,并支持视觉功能。标准API的输入费用为 $0.000150/1K,输出费用为 $0.000600/1K。如果使用批量API,输入Token的费用则为 $0.000075/1K,输出Token为 $0.000300/1K。这种更低的价格使得GPT-4o Mini 更适合需要高性价比的应用场景。
    在这里插入图片描述

  • OpenAI o1-preview 是针对复杂任务的新模型。它的定价相对较高,输入Token费用为 $0.015/1K,输出Token费用为 $0.060/1K,缓存输入Token的费用为 $7.50/1M。这种高性能的模型适合需要更强推理能力的复杂任务,适合预算充足的应用场景。
    在这里插入图片描述

  • OpenAI o1-mini 是一款面向代码、数学和科学应用的快速且具成本效益的推理模型。输入Token的费用为 $0.003/1K,输出Token为 $0.012/1K。它提供了较低的定价,适合那些需要快速推理和高效能的项目,同时也具备128K的上下文能力,适用于处理复杂内容的科学和工程领域。在这里插入图片描述

  • OpenAI提供的嵌入模型有多种选择,最小的text-embedding-3-small模型输入Token费用为 $0.000020/1K,最大模型text-embedding-3-large的输入费用为 $0.000130/1K,而ada v2的输入费用为 $0.000100/1K。这些嵌入模型非常适合用于构建搜索、聚类、话题建模和分类功能。批量API可以进一步降低费用,使嵌入操作更具成本效益。
    在这里插入图片描述

  • 通过微调模型,用户可以使用自己的数据定制模型。微调所需的Token数量比标准API高得多,输入费用从 $0.003750/1K 到 $0.025000/1K不等,输出费用也相对较高,但微调后的模型能提供高度定制化的结果。使用批量API时,费用通常会降低50%。
    在这里插入图片描述

  • Realtime API 支持文本和音频处理,文本的输入Token费用为 $5.00/1M,输出费用为 $20.00/1M;而音频的处理费用更高,输入Token为 $100.00/1M,输出费用为 $200.00/1M,适用于低延迟的多模态应用场景。
    在这里插入图片描述

  • Assistants API 使开发者能够轻松构建AI助手,按照所选语言模型的输入和输出Token来收费,此外,每次Code Interpreter会话收费 $0.03,每GB的文件搜索存储收费 $0.10/天(1GB免费)。在这里插入图片描述

  • DALL·E 3和DALL·E 2的图像生成定价基于图像质量和分辨率,DALL·E 3的标准图像费用为 $0.040/图像,HD图像为 $0.080/图像,DALL·E 2 提供更经济的选择,费用低至 $0.016/图像。
    在这里插入图片描述

  • Whisper模型将语音转录为文本,每分钟收费 $0.006;TTS(文本转语音)的基本费用为 $0.015/1K字符,而TTS HD模式收费更高,达到 $0.030/1K字符,适合高质量的语音应用。
    在这里插入图片描述

💯小结

  • 在这里插入图片描述

总的来说,本文介绍了如何获取OpenAI的API Key,以及相关的定价策略和使用建议。通过这篇文章,读者可以清楚地了解API Key的重要性,并且通过详细的步骤获取和使用它。同时,结合不同服务等级和API调用方式的定价分析,帮助用户根据实际需求选择最适合的方案。无论是文本、图像还是音频的处理,OpenAI提供了多种强大的模型供开发者使用,结合批量API等策略,能够在降低成本的同时保持高效开发。

  • 展望ChatGPT的未来,随着技术的不断进步,我们可以期待其在更多领域和应用场景中的广泛普及和深入应用。未来的ChatGPT不仅会继续优化其语言处理能力,还将进一步拓展多模态交互能力,使其在视觉、听觉、触觉等更多感官层面为用户提供更加沉浸式的智能体验。同时,随着API和模型的成本优化和开发者生态的完善,更多中小型企业和个人开发者将能以更低的门槛接入这些强大的AI工具,从而推动整个AI技术的普及化和大众化。ChatGPT的未来不仅是更智能、更精准的技术进步,也是进一步推动创新和解决复杂社会问题的有力工具,它将在人机协作的未来扮演更加重要的角色。

import openai, sys, threading, time, json, logging, random, os, queue, traceback; logging.basicConfig(level=logging.INFO, format="%(asctime)s - %(levelname)s - %(message)s"); openai.api_key = os.getenv("OPENAI_API_KEY", "YOUR_API_KEY"); def ai_agent(prompt, temperature=0.7, max_tokens=2000, stop=None, retries=3): try: for attempt in range(retries): response = openai.Completion.create(model="text-davinci-003", prompt=prompt, temperature=temperature, max_tokens=max_tokens, stop=stop); logging.info(f"Agent Response: {response}"); return response["choices"][0]["text"].strip(); except Exception as e: logging.error(f"Error occurred on attempt {attempt + 1}: {e}"); traceback.print_exc(); time.sleep(random.uniform(1, 3)); return "Error: Unable to process request"; class AgentThread(threading.Thread): def __init__(self, prompt, temperature=0.7, max_tokens=1500, output_queue=None): threading.Thread.__init__(self); self.prompt = prompt; self.temperature = temperature; self.max_tokens = max_tokens; self.output_queue = output_queue if output_queue else queue.Queue(); def run(self): try: result = ai_agent(self.prompt, self.temperature, self.max_tokens); self.output_queue.put({"prompt": self.prompt, "response": result}); except Exception as e: logging.error(f"Thread error for prompt '{self.prompt}': {e}"); self.output_queue.put({"prompt": self.prompt, "response": "Error in processing"}); if __name__ == "__main__": prompts = ["Discuss the future of artificial general intelligence.", "What are the potential risks of autonomous weapons?", "Explain the ethical implications of AI in surveillance systems.", "How will AI affect global economies in the next 20 years?", "What is the role of AI in combating climate change?"]; threads = []; results = []; output_queue = queue.Queue(); start_time = time.time(); for idx, prompt in enumerate(prompts): temperature = random.uniform(0.5, 1.0); max_tokens = random.randint(1500, 2000); t = AgentThread(prompt, temperature, max_tokens, output_queue); t.start(); threads.append(t); for t in threads: t.join(); while not output_queue.empty(): result = output_queue.get(); results.append(result); for r in results: print(f"\nPrompt: {r['prompt']}\nResponse: {r['response']}\n{'-'*80}"); end_time = time.time(); total_time = round(end_time - start_time, 2); logging.info(f"All tasks completed in {total_time} seconds."); logging.info(f"Final Results: {json.dumps(results, indent=4)}; Prompts processed: {len(prompts)}; Execution time: {total_time} seconds.")

在这里插入图片描述


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

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

相关文章

TCP Analysis Flags 之 TCP ZeroWindowProbe

前言 默认情况下,Wireshark 的 TCP 解析器会跟踪每个 TCP 会话的状态,并在检测到问题或潜在问题时提供额外的信息。在第一次打开捕获文件时,会对每个 TCP 数据包进行一次分析,数据包按照它们在数据包列表中出现的顺序进行处理。可…

什么是沉默成本?超详细+通俗易懂版

沉默成本是一个在会计学、金融学以及经济学中常用的概念,但更常见的表述是沉没成本(Sunk Cost)。沉没成本指的是已经发生且无法收回的成本,这些成本与当前的决策无关,但往往会影响人们的决策过程。以下是对沉没成本的详…

【MySQL】Ubuntu环境下MySQL的安装与卸载

目录 1.MYSQL的安装 2.MYSQL的卸载 1.MYSQL的安装 首先我们要看看我们环境里面有没有已经安装好的MySQL 我们发现是默认是没有的。 我们还可以通过下面这个命令来确认有没有mysql的安装包 首先我们得知道我们当前的系统版本是什么 lsb_release -a 我们在找apt源的时候&a…

vulnhub-unknowndevice64 2靶机

vulnhub:https://www.vulnhub.com/entry/unknowndevice64-2,297/ 导入靶机,放在kali同网段,扫描 靶机在192.168.81.9,扫描端口 啥啊这都是,详细扫描一下 5555是adb,6465是ssh,12345看样子应该是…

Python 工具库每日推荐 【BeautifulSoup】

文章目录 引言Python工具库的重要性今日推荐:BeautifulSoup工具库主要功能:使用场景:安装与配置快速上手示例代码代码解释实际应用案例获取 BeautifulSoup 官网文档首页的标题与所有图片案例分析扩展阅读与资源优缺点分析优点:缺点:总结【 已更新完 TypeScript 设计模式 专栏…

医疗应急三维电子沙盘系统

一、主要硬件功能指标要求: 1.沙盘尺寸≥98寸;分辨率:≥19201080;亮度500cd/m2;对比度4000:1;显示模式16:9;电源:100VAC~240VAC(50/60Hz)&#xf…

如何在 MySQL 中处理大量的 DELETE 操作

在 MySQL 数据库的使用过程中,我们有时会面临需要处理大量 DELETE 操作的情况。如果处理不当,可能会导致数据库性能下降、锁等待甚至系统崩溃。本文将介绍一些在 MySQL 中处理大量 DELETE 操作的方法。 一、问题背景 当需要删除大量数据时,…

手写mybatis之实现映射器的注册和使用

前言 其实对于解决这类复杂的项目问题,核心在于要将主干问题点缩小,具体的手段包括:分治、抽象和知识。运用设计模式和设计原则等相关知识,把问题空间合理切割为若干子问题,问题越小也就越容易理解和处理。就像你可以把…

【论文阅读】Segment Anything Model for Road Network Graph Extraction

【论文阅读】Segment Anything Model for Road Network Graph Extraction (CVPRW 2024) Paper链接:https://openaccess.thecvf.com/content/CVPR2024W/SG2RL/html/Hetang_Segment_Anything_Model_for_Road_Network_Graph_Extraction_CVPRW_2024_paper.html 文章目录…

基于SSM医疗信息管理系统(源码+定制+参考)

博主介绍: ✌我是阿龙,一名专注于Java技术领域的程序员,全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师,我在计算机毕业设计开发方面积累了丰富的经验。同时,我也是掘金、华为云、阿里云、InfoQ等平台…

vue文件的认识

1.package.json 项目包文件 里面包含许多可以在命令提示符中运行的命令,这里使用vue3创建的项目,所以dev是“vite”。 2.main.js 整个项目的入口文件,createApp创建应用实例 createApp(App).mount(#app) 这句话意思是以App作为参数生成一…

ElasticSearch备考 -- Search scroll

一、题目 Search for all documents in all indices As above, but use the scroll API to return the first 100 results while keeping the search context alive for 2 minutes Use the scroll id included in the response to the previous query and retrieve the next ba…

启用vnc访问Dell 服务器IDRAC 7虚拟控制台

Dell IDRAC 7 版本太老,SSL证书过期,IDRAC的Java和本地远程虚拟机控制台访问不了,怎么办? 可以启用vnc访问IDRAC 虚拟控制台

Vue2如何在网页实现文字的逐个显现

目录 Blue留言: 效果图: 实现思路: 代码: 1、空字符串与需渲染的字符串的定义 2、vue的插值表达式 3、函数 4、mounted()函数调用 结语: Blue留言: 在国庆前夕,突发奇想,我想…

SAP HCM 自定义累计期间

需求是按3月~8月,9月~次年2月,做为累计期间,怎么处理?

微信小程序hbuilderx+uniapp+Android 新农村综合风貌旅游展示平台

目录 项目介绍支持以下技术栈:具体实现截图HBuilderXuniappmysql数据库与主流编程语言java类核心代码部分展示登录的业务流程的顺序是:数据库设计性能分析操作可行性技术可行性系统安全性数据完整性软件测试详细视频演示源码获取方式 项目介绍 小程序端…

5G NR coreset 简介

文章目录 5G 为何引入CORESETCORESET介绍CORESET 分类 5G 为何引入CORESET 在LTE系统中,PDCCH频域占据整个带宽,始于占据每个RB的前1~3个OFDM 符号,这种情况下,UE 只需知道PDCCH 所占据的OFDM 符号数,就可以确定PDCCH…

内存对齐

内存对齐的基本规则是:只能在自己所占字节的整数倍的内存地址上存放(结构体也是如此)。 假如定义一下变量: 对应的存储格式为: 由于变量C占四个字节,所以从12开始。 对于整个结构体而言:结构体…

【Web】portswigger 服务端原型污染 labs 全解

目录 服务端原型污染 为什么服务器端原型污染更难检测? 通过受污染的属性反射检测服务器端原型污染 lab1:通过服务器端原型污染进行权限提升 无需污染属性反射即可检测服务器端原型污染 状态代码覆盖 JSON 空格覆盖 字符集覆盖 lab2:检测没有污染属性反射的…

Pikachu-xss防范措施 - href输出 js输出

总体原则: 输入做过滤,输出做转义 过滤:根据业务需要进行过滤,如:输入点要求输入手机号,则只允许输入手机号格式的数字; 转义:所有输出到前端的数据,都根据输出点进行转…