main
HuangHai 5 months ago
parent 2ce0302384
commit f991d3262e

@ -4,14 +4,13 @@ from pathlib import Path
MODEL_API_KEY = "sk-01d13a39e09844038322108ecdbd1bbc"
MODEL_API_URL = 'https://dashscope.aliyuncs.com/compatible-mode/v1'
MODEL_NAME = "deepseek-v3"
MODEL_GENERATION_TEXT_URL = "https://dashscope.aliyuncs.com/api/v1/services/aigc/text-generation/generation" # 阿里云文本生成服务
MODEL_GENERATION_TEXT_URL = "https://dashscope.aliyuncs.com/api/v1/services/aigc/text-generation/generation" #
QWEN_MODEL_NAME = 'qwen-plus'
# 华为云
HW_API_KEY = '2R7vrjfIZO1chcfk4V3zDscx2Ms4I4kdoY7XSFnxa8Z2RNfAztg8qrXXKkwJGZWvMtS4qnN782WmaY4xZfMhyg'
HW_API_URL = url = "https://infer-modelarts-cn-southwest-2.modelarts-infer.com/v1/infers/952e4f88-ef93-4398-ae8d-af37f63f0d8e/v1/chat/completions"
HW_MODEL_NAME = 'DeepSeek-R1'
# 华为云【18686619970账号申请的免费额度】
HW_API_KEY = 'y8O0eE7CwZmWrznXL5AcLl9Re8wCKcGMV1rk04sBQ8Fc2jpymGyJrooNvsVJBUTm-u8zAOk65LssUQjNLUfc-Q'
HW_API_URL = "https://maas-cn-southwest-2.modelarts-maas.com/v1/infers/fd53915b-8935-48fe-be70-449d76c0fc87/v1/chat/completions"
HW_MODEL_NAME = 'DeepSeek-V3'
# 阿里云的配置信息
ALY_AK = 'LTAI5tE4tgpGcKWhbZg6C4bh'

@ -2,31 +2,58 @@
import requests
import json
import urllib3
from Config import *
if __name__ == '__main__':
# 禁止警告
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
# Send request.
# 设置请求头和数据
headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer '+HW_API_KEY # 把yourApiKey替换成真实的API Key
'Authorization': 'Bearer ' + HW_API_KEY # 把yourApiKey替换成真实的API Key
}
data = {
"model": HW_MODEL_NAME,
"max_tokens": 20,
"messages": [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "你好"}
{"role": "user", "content": "什么水果不影响血糖值?"}
],
"stream": False,
"stream": True, # 启用流式输出
"temperature": 1.0
}
resp = requests.post(HW_API_URL, headers=headers, data=json.dumps(data), verify=False)
# Print result.
print(resp.status_code)
print(resp.text)
# 初始化变量,用于保存完整的响应内容
full_response = ""
# 发送请求并处理流式响应
with requests.post(HW_API_URL, headers=headers, data=json.dumps(data), verify=False, stream=True) as resp:
if resp.status_code == 200:
for line in resp.iter_lines():
if line: # 过滤掉空行
decoded_line = line.decode('utf-8')
if decoded_line.startswith("data: "): # 处理以 "data: " 开头的行
json_str = decoded_line[len("data: "):] # 去掉 "data: " 前缀
if json_str == "[DONE]": # 流式响应结束
break
try:
# 解析 JSON 数据
json_data = json.loads(json_str)
# 提取流式输出的内容
if "choices" in json_data and len(json_data["choices"]) > 0:
# 检查是否有 "delta" 字段
delta = json_data["choices"][0].get("delta", {})
# 尝试从 "content" 或 "reasoning_content" 中提取内容
content = delta.get("content", delta.get("reasoning_content", ""))
if content:
# 实时逐字输出内容
print(content, end="", flush=True)
# 将内容累积到完整响应中
full_response += content
except json.JSONDecodeError:
pass # 忽略解析错误
else:
print("请求失败,状态码:", resp.status_code)
print("响应内容:", resp.text)

Loading…
Cancel
Save