2024-01-23 21:25:12 +08:00
|
|
|
|
import SparkApi
|
|
|
|
|
from prompt import *
|
|
|
|
|
from tqdm import tqdm
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
with open('config.yml', 'r', encoding='utf-8') as f:
|
|
|
|
|
configs = yaml.load(f.read(), Loader=yaml.FullLoader)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# 以下密钥信息从控制台获取
|
|
|
|
|
appid = configs['appid'] # 填写控制台中获取的 APPID 信息
|
|
|
|
|
api_secret = configs['api_secret'] # 填写控制台中获取的 APISecret 信息
|
|
|
|
|
api_key = configs['api_key'] # 填写控制台中获取的 APIKey 信息
|
|
|
|
|
|
|
|
|
|
#用于配置大模型版本,默认“general/generalv2”
|
|
|
|
|
domain = "general" # v1.5版本
|
|
|
|
|
# domain = "generalv2" # v2.0版本
|
|
|
|
|
#云端环境的服务地址
|
|
|
|
|
Spark_url = "ws://spark-api.xf-yun.com/v1.1/chat" # v1.5环境的地址
|
|
|
|
|
# Spark_url = "ws://spark-api.xf-yun.com/v2.1/chat" # v2.0环境的地址
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
text =[]
|
|
|
|
|
|
|
|
|
|
# length = 0
|
|
|
|
|
|
|
|
|
|
def getText(role,content):
|
|
|
|
|
jsoncon = {}
|
|
|
|
|
jsoncon["role"] = role
|
|
|
|
|
jsoncon["content"] = content
|
|
|
|
|
text.append(jsoncon)
|
|
|
|
|
return text
|
|
|
|
|
|
|
|
|
|
def getlength(text):
|
|
|
|
|
length = 0
|
|
|
|
|
for content in text:
|
|
|
|
|
temp = content["content"]
|
|
|
|
|
leng = len(temp)
|
|
|
|
|
length += leng
|
|
|
|
|
return length
|
|
|
|
|
|
|
|
|
|
def checklen(text):
|
|
|
|
|
while (getlength(text) > 8000):
|
|
|
|
|
del text[0]
|
|
|
|
|
return text
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
|
|
text.clear
|
|
|
|
|
file_name = 'a2.jsonl'
|
|
|
|
|
conversations = []
|
|
|
|
|
for i in range(1):
|
|
|
|
|
for j in tqdm(range(10)):
|
|
|
|
|
Input = prompt(i)
|
|
|
|
|
question = checklen(getText("user",Input))
|
2024-12-10 23:37:45 +08:00
|
|
|
|
SparkApi.answer = ""
|
|
|
|
|
SparkApi.main(appid, api_key, api_secret, Spark_url, domain, question)
|
2024-01-23 21:25:12 +08:00
|
|
|
|
getText("assistant", SparkApi.answer)
|
|
|
|
|
conversations.append(xinghuo_api(SparkApi.answer))
|
|
|
|
|
if i % 2 == 0 :
|
|
|
|
|
save_jsonl(conversations, file_name)
|
|
|
|
|
conversations.clear()
|
|
|
|
|
|