
从零开始掌握Reddit获取API密钥与数据分析
本文详细介绍了如何通过GitHub提供的资源来调用和管理OpenAI模型数据,尤其是使用Azure OpenAI服务的方法。通过这份指南,读者可以学习如何配置和部署相关工具,以便更高效地调用各种大模型接口。本文涵盖了从获取API密钥到具体部署的每一个步骤,并提供了实例代码帮助读者理解实际操作。
使用GitHub提供的Azure OpenAI服务,用户可以通过访问开源地址来获取API密钥。在页面中,点击右上角的“Get API key”按钮。
接下来,点击“Get developer key”以申请开发者密钥。选择Beta版本并点击“Generate new token”。
授权后,输入“token name”,如“gpt4”,然后点击“Generate token”按钮。将生成的access token复制到./app.py
中的gtp4o_token
变量中。
通过Docker Compose,可以快速部署Azure OpenAI服务。首先,确保在本地安装了Docker和Docker Compose。
docker-compose up -d
使用docker-compose ps
命令来查看服务的部署状态,确保一切正常运行。
docker-compose ps
服务的数据存储在./data/mysql
文件夹内,请确保该文件夹存在并具有写入权限。
OneAPI是一种用于管理和分发OpenAI接口的系统,支持多种大模型如Azure、Anthropic Claude和智谱ChatGLM。
在OneAPI中配置渠道时,将xinference BaseURL填入,并为模型输入自定义名称。提交后,测试调用是否成功。
通过OneAPI的令牌界面,用户可以管理和生成新的API密钥,为不同的模型接口提供访问权限。
在Python代码中,设置openai_api_key
和openai_api_base
变量,确保它们对应于您在OneAPI中配置的渠道。
openai_api_key = "填入你创建令牌的key,格式:sk-xxxx"
openai_api_base = "填入你oneapi的url,比如:http://localhost:3000/"
使用OpenAI Python库创建一个客户端实例,并配置请求参数。
client = OpenAI(api_key=openai_api_key, base_url=openai_api_base)
使用创建的客户端,发起聊天请求并处理返回的响应信息。
chat_response = client.chat.completions.create(
model="InternVL-Chat-V1-5",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Tell me a joke."},
]
)
print("Chat response:", chat_response.choices)
在Apifox中,设置请求的URL和请求体,确保它们与OneAPI的配置相匹配。
点击发送按钮,Apifox会发出请求并展示返回结果,验证API调用是否成功。
根据返回的响应结果,确认调用是否正确,并根据需要调整Apifox的配置参数。
使用Nginx对OpenAI的API进行反向代理配置,确保在配置文件中正确设置server_name和proxy_pass参数。
server{
server_name openai.justsong.cn;
location / {
client_max_body_size 64m;
proxy_http_version 1.1;
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_cache_bypass $http_upgrade;
proxy_set_header Accept-Encoding gzip;
proxy_read_timeout 300s;
}
}
使用Let’s Encrypt的certbot工具为Nginx配置HTTPS,确保数据传输的安全性。
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot
sudo certbot --nginx
sudo service nginx restart
在完成配置后,重启Nginx服务,确保一切正常运行,并通过浏览器访问验证配置是否生效。
在Ubuntu上安装certbot工具,用于生成和管理SSL证书。
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot
使用certbot生成SSL证书,并自动配置Nginx以支持HTTPS。
sudo certbot --nginx
定期使用certbot更新SSL证书,确保HTTPS服务的持续可用性。
docker-compose up -d
命令即可快速部署服务。部署后,可以使用docker-compose ps
检查服务状态。openai_api_key
和openai_api_base
变量,然后使用OpenAI Python库创建一个客户端实例。通过该客户端可以发起请求并处理响应。例如:
client = OpenAI(api_key=openai_api_key, base_url=openai_api_base)
server_name
和proxy_pass
参数。然后使用Let’s Encrypt的certbot工具生成SSL证书并自动配置Nginx,以确保HTTPS数据传输的安全性。