使用 python 调用硅基流动 Deepseek 等模型api,进行聊天对话_python调用硅基流动api
首先需要在用硅基流动官网注册账号:
- https://cloud.siliconflow.cn/models
随后,点击API 密钥
部分,获得自己的 api
基于python 的调用
使用的代码如下,粘贴到命名为main.py
的文件中:
import requestsfrom rich.markdown import Markdownfrom rich.console import Consolefrom rich.prompt import Prompt# 配置信息API_URL = \"https://api.siliconflow.cn/v1/chat/completions\"API_KEY = \"你的api\"model = \"deepseek-ai/DeepSeek-R1\"console = Console()messages = []def chat_completion(messages): \"\"\"调用API: https://siliconflow.cn/zh-cn/models\"\"\" headers = { \"Authorization\": f\"Bearer {API_KEY}\", \"Content-Type\": \"application/json\" } payload = { \"model\": model, \"messages\": messages, \"temperature\": 0.7, \"max_tokens\": 1024, \"response_format\": {\"type\": \"text\"} } try: response = requests.post(API_URL, json=payload, headers=headers) response.raise_for_status() return response.json()[\'choices\'][0][\'message\'][\'content\'] except Exception as e: console.print(f\"[bold red]API请求失败: {str(e)}[/]\") return Nonedef main(): console.print(\"[bold green]对话已开始,输入 \'exit\' 结束对话[/]\") while True: user_input = Prompt.ask(\"[bold cyan]你的问题[/]\") if user_input.lower() in [\'exit\', \'quit\']: break if not user_input.strip(): continue messages.append({\"role\": \"user\", \"content\": user_input}) console.print(\"[italic yellow]思考中...[/]\") response = chat_completion(messages) if response: messages.append({\"role\": \"assistant\", \"content\": response}) console.print(\"\\n[bold magenta]回答:[/]\") console.print(Markdown(response)) console.print(\"\\n\" + \"-\"*50 + \"\\n\")if __name__ == \"__main__\": main()
注意!上述代码配置信息
部分输入你的api,以及选择相应的模型。
随后可以使用python main.py
运行:
分享结束,转载请注明出处!