Azure OpenAI 服务 REST API 参考 – Azure OpenAI(openai key验证)
I. OpenAI API密钥验证的重要性
为保护API密钥安全,验证是必要的。验证能确保用户信息的准确性和完全性。
II. 如何有效验证OpenAI API密钥
A. 注册OpenAI账户并完成验证
1. 访问OpenAI官方网站,点击注册按钮,填写个人信息完成注册。
2. 收到验证邮件,依照提示完成验证并登录账户。
B. 导航至“APIs”页面并申请API密钥
1. 登录OpenAI账户,进入用户主页,找到“APIs”页面。
2. 在APIs页面中可以看到API的相关信息,点击申请API密钥。
C. 设置API密钥环境变量
1. 通过export命令设置OPENAI_API_KEY环境变量。
2. 使用curl命令验证API密钥的有效性。
D. 激活账号和获得API密钥
1. 打开邮箱,点击OpenAI邮件中的链接激活账号。
2. 访问API密钥页面,获得需要在要求中使用的API密钥。
E. 验证API密钥的有效性
1. 进行测试API调用,检查会不会出现毛病。
2. 确保API密钥的有效性以确保正常使用OpenAI API。
III. 验证OpenAI API密钥常见问题和解决方法
A. 问题1:没法成功注册OpenAI账户和完成验证
1. 检查注册信息的准确性和完全性。
2. 确认验证邮件会不会被误判为垃圾邮件。
B. 问题2:没法找到APIs页面或申请API密钥按钮
1. 确认已成功登录OpenAI账户。
2. 检查会不会有相关的账户权限限制。
C. 问题3:API密钥验证失败或没法设置环境变量
1. 确认输入的API密钥会不会正确。
2. 检查操作系统环境变量设置的正确性。
IV. 总结
注册账户、申请API密钥、设置环境变量、激活账号和验证API密钥的步骤和解决常见问题的方法。通过有效验证OpenAI API密钥,可以确保安全性,提高使用体验,并且正常使用OpenAI API来开发创新和变革性的利用程序。
openai key验证的进一步展开说明
# Azure OpenAI REST API参考
## 身份验证
Azure OpenAI提供两种身份验证方法:API密钥和Azure Active Directory。
1. API密钥身份验证:使用API密钥作为HTTP标头中的`api-key`参数进行身份验证。
2. Azure Active Directory身份验证:通过将身份验证令牌作为`Authorization`标头的一部份进行身份验证。
## REST API版本控制
对服务API的版本控制,使用`api-version`查询参数,所有的版本遵守`YYYY-MM-DD`的日期结构。
示例:
“`
POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/completions?api-version=2023-05⑴5
“`
## 完成
通过完成操作,可以根据提供的提示生成一个或多个预测完成。此服务还可以返回每一个位置的替换令牌的几率。
### 创建完成
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/completions?api-version={api-version}
路径参数:
– `your-resource-name`:Azure OpenAI资源的名称。
– `deployment-id`:选择部署模型时的部署名称。
– `api-version`:用于此操作的API版本,遵守`YYYY-MM-DD`格式。
### 要求正文
– `prompt`:生成完成的提示,类型为字符串或字符串数组。未指定时,模型将重新文档的开头生成。
示例要求:
“`
curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/completions?api-version=2023-05⑴5 -H “Content-Type: application/json” -H “api-key: YOUR_API_KEY” -d “{ ”prompt”: ”Once upon a time”, ”max_tokens”: 5 }”
“`
示例响应:
“`
{
“id”: “cmpl⑷kGh7iXtjW4lc9eGhff6Hp8C7btdQ”,
“object”: “text_completion”,
“created”: 1646932609,
“model”: “ada”,
“choices”: [
{
“text”: “, a dark line crossed”,
“index”: 0,
“logprobs”: null,
“finish_reason”: “length”
}
]
}
“`
## 嵌入
可以通过输入文本获得给定输入的向量表示情势,以便更容易地在机器学习模型和其他算法中使用。
### 创建嵌入
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/embeddings?api-version={api-version}
路径参数:
– `your-resource-name`:Azure OpenAI资源的名称。
– `deployment-id`:模型部署的名称。
– `api-version`:用于此操作的API版本,遵守`YYYY-MM-DD`格式。
示例要求:
“`
curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/embeddings?api-version=2023-05⑴5 -H “Content-Type: application/json” -H “api-key: YOUR_API_KEY” -d “{”input”: ”The food was delicious and the waiter…”}”
“`
示例响应:
“`
{
“object”: “list”,
“data”: [
{
“object”: “embedding”,
“embedding”: [
0.018990106880664825,
-0.0073809814639389515,
…. (1024 floats total for ada)
0.021276434883475304
],
“index”: 0
}
],
“model”: “text-similarity-babbage:001”
}
“`
## 聊天完成
使用GPT⑶5-Turbo和GPT⑷模型创建聊天消息的补全内容。
### 创建聊天完成
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/chat/completions?api-version={api-version}
路径参数:
– `your-resource-name`:Azure OpenAI资源的名称。
– `deployment-id`:模型部署的名称。
– `api-version`:用于此操作的API版本,遵守`YYYY-MM-DD`格式。
示例要求:
“`
curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/chat/completions?api-version=2023-05⑴5 -H “Content-Type: application/json” -H “api-key: YOUR_API_KEY” -d ‘{“messages”:[{“role”: “system”, “content”: “You are a helpful assistant.”},{“role”: “user”, “content”: “Does Azure OpenAI support customer managed keys?”},{“role”: “assistant”, “content”: “Yes, customer managed keys are supported by Azure OpenAI.”},{“role”: “user”, “content”: “Do other Azure AI services support this too?”}]}’“`
示例响应:
“`
{“id”:”chatcmpl⑹v7mkQj980V1yBec6ETrKPRqFjNw9″, “object”:”chat.completion”,”created”:1679072642, “model”:”gpt⑶5-turbo”, “usage”:{“prompt_tokens”:58, “completion_tokens”:68, “total_tokens”:126}, “choices”:[{“message”:{“role”:”assistant”, “content”:”Yes, other Azure AI services also support customer managed keys. Azure AI services offer multiple options for customers to manage keys, such as using Azure Key Vault, customer-managed keys in Azure Key Vault or customer-managed keys through Azure Storage service. This helps customers ensure that their data is secure and access to their services is controlled.”},”finish_reason”:”stop”,”index”:0}]}
“`
## 完成扩大
使用Azure OpenAI完成扩大从数据上生成预测。
### 使用聊天完成扩大
POST {your-resource-name}/openai/deployments/{deployment-id}/extensions/chat/completions?api-version={api-version}
路径参数:
– `your-resource-name`:Azure OpenAI资源的名称。
– `deployment-id`:模型部署的名称。
– `api-version`:用于此操作的API版本,遵守`YYYY-MM-DD`格式。
示例要求:
“`
curl -i -X POST YOUR_RESOURCE_NAME/openai/deployments/YOUR_DEPLOYMENT_NAME/extensions/chat/completions?api-version=2023-06-01-preview -H “Content-Type: application/json” -H “api-key: YOUR_API_KEY” -d ‘ { “temperature”: 0, “max_tokens”: 1000, “top_p”: 1.0, “dataSources”: [ { “type”: “AzureCognitiveSearch”, “parameters”: { “endpoint”: “‘YOUR_AZURE_COGNITIVE_SEARCH_ENDPOINT'”, “key”: “‘YOUR_AZURE_COGNITIVE_SEARCH_KEY'”, “indexName”: “‘YOUR_AZURE_COGNITIVE_SEARCH_INDEX_NAME'” } } ], “messages”: [ { “role”: “user”, “content”: “What are the differences between Azure Machine Learning and Azure AI services?” } ] } ‘
“`
响应:
“`
{“id”: “12345678⑴a2b⑶c4e5f-a123⑴2345678abcd”, “model”: “”, “created”: 1684304924, “object”: “chat.completion”, “choices”: [{“message”: {“role”: “assistant”, “content”: “Azure AI services are cloud-based artificial intelligence (AI) services that help developers build cognitive intelligence into applications without having direct AI or data science skills or knowledge. Azure Machine Learning is a cloud service for accelerating and managing the machine learning project lifecycle.”}, “finish_reason”: “stop”, “index”: 0}]}
“`
## 图象生成
从文本描写文字生成一批图象。
### 要求生成的图象
POST https://{your-resource-name}.openai.azure.com/openai/images/generations:submit?api-version={api-version}
路径参数:
– `your-resource-name`:Azure OpenAI资源的名称。
– `api-version`:用于此操作的API版本,遵守`YYYY-MM-DD`格式。
要求正文:
– `prompt`:所需图象的文本说明。
– `size`:生成的图象的大小。
– `n`:要生成的图象数。
示例要求:
“`
curl -X POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/images/generations:submit?api-version=2023-06-01-preview -H “Content-Type: application/json” -H “api-key: YOUR_API_KEY” -d ‘{ “prompt”: “An avocado chair”, “size”: “512×512”, “n”: 3 }’
“`
### 获得生成的图象结果
GET https://{your-resource-name}.openai.azure.com/openai/operations/images/{operation-id}?api-version={api-version}
路径参数:
– `your-resource-name`:Azure OpenAI资源的名称。
– `operation-id`:标识原始图象生成要求的GUID。
示例要求:
“`
curl -X GET “https://{your-resource-name}.openai.azure.com/openai/operations/images/{operation-id}?api-version=2023-06-01-preview” -H “Content-Type: application/json” -H “Api-Key: {api key}”
“`
从服务器中删除生成的图象
DELETE https://{your-resource-name}.openai.azure.com/openai/operations/images/{operation-id}?api-version={api-version}
路径参数:
– `your-resource-name`:Azure OpenAI资源的名称。
– `operation-id`:标识原始图象生成要求的GUID。
示例要求:
“`
curl -X DELETE “https://{your-resource-name}.openai.azure.com/openai/operations/images/{operation-id}?api-version=2023-06-01-preview” -H “Content-Type: application/json” -H “Api-Key: {api key}”
“`
请注意,这只是一个参考,您需要根据准确的API要求和相应的配置信息进行调剂。
openai key验证的常见问答Q&A
问题1:关于OpenAI API Key的申请和验证进程有哪几种步骤?
答案:OpenAI API Key的申请和验证进程包括以下步骤:
- 访问OpenAI官方网站并注册账户。
- 完成验证邮件中的验证步骤并登录账户。
- 导航至“APIs”页面并申请API Key。
- 等待邮箱验证完成,并输入Y以继续。
- 获得API Key。
- 设置环境变量并使用API Key进行身份验证。
详细解释:
首先,在浏览器中访问OpenAI官方网站,并根据指引填写个人信息完成注册进程。注册成功后,会收到一封验证邮件,依照邮件中的提示完成验证并登录账户。
在登录OpenAI账户后,进入用户主页,找到“APIs”页面。在该页面中可以看到API的相关信息。点击“Create New Key”按钮,并依照提示进行操作,便可申请API Key。
申请成功后,需要等待邮箱验证完成,并在程序中输入Y以继续。然后,程序将自动完成注册进程并获得API Key。
为了使用方便,可以通过设置环境变量来保存API Key,在命令行中使用export命令设置OPENAI_API_KEY环境变量。然后,使用该API Key进行API调用时,通过要求头设置OPENAI_API_KEY便可进行身份验证。
示例:
例如,可使用以下命令设置OPENAI_API_KEY环境变量:
export OPENAI_API_KEY="Your OpenAI API Key"
然后,可使用curl命令进行API调用,例如:
curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer $OPENAI_API_KEY" -d '{"prompt": "Hello, world!"}' https://api.openai.com/v1/engines/davinci-codex/completions
在这个示例中,使用了设置的OPENAI_API_KEY进行身份验证,并调用了OpenAI的API进行文本补全。