You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

58 lines
1.8 KiB
Markdown

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

![codegeex_logo](../resources/logo/codegeex_logo.png)
# 创建CodeGeeX API
使用[天启 · API开放平台](https://tianqi.aminer.cn/open/)申请CodeGeeX API
<img src="../resources/api/api_step_1.png">
点击首页中的天启平台体验入口:
<img src="../resources/api/api_step_2.png">
点击API应用
<img src="../resources/api/api_step_3.png">
输入任意名称创建API应用。创建后会得到API Key/Secret用于调用API
<img src="../resources/api/api_step_4.png">
在API信息中可以查看代码生成/代码翻译的请求地址和使用文档:
<img src="../resources/api/api_step_5.png">
根据文档中的描述使用API参考文件``api/generation_example.py``
```python
# encoding:utf-8
import requests
import json
'''
Code Generation
'''
API_KEY = "" # Get from Tianqi console. 从控制台获取
API_SECRET = "" # Get from Tianqi console. 从控制台获取
PROMPT = "from typing import List\n\ndef has_close_elements(numbers: List[float], threshold: float) -> bool:\n \"\"\" Check if in given list of numbers, are any two numbers closer to each other than\n given threshold.\n >>> has_close_elements([1.0, 2.0, 3.0], 0.5)\n False\n >>> has_close_elements([1.0, 2.8, 3.0, 4.0, 5.0, 2.0], 0.3)\n True\n \"\"\"\n"
NUMBER = 3
LANG = "Python"
request_url = "https://tianqi.aminer.cn/api/v2/"
api = 'multilingual_code_generate'
# Request is in json format. 指定请求参数格式为json
headers = {'Content-Type': 'application/json'}
request_url = request_url + api
data = {
"apikey": API_KEY,
"apisecret": API_SECRET,
"prompt":PROMPT,
"n":NUMBER,
"lang":LANG
}
def main():
response = requests.post(request_url, headers=headers, data=json.dumps(data))
if response:
print(response.json())
if __name__ == '__main__':
main()
```