fix #I80ZKT app_ai_ali通义千问对接

This commit is contained in:
Chill
2023-09-14 15:53:42 +08:00
parent d911f67b15
commit f0cd41c207
2 changed files with 20 additions and 6 deletions

View File

@@ -204,15 +204,24 @@ GPT-3 A set of models that can understand and generate natural language
# azure 格式 # azure 格式
usage = json.loads(json.dumps(res['usage'])) usage = json.loads(json.dumps(res['usage']))
content = json.loads(json.dumps(res['choices'][0]['message']['content'])) content = json.loads(json.dumps(res['choices'][0]['message']['content']))
elif self.provider == 'ali':
# ali 格式
usage = res['usage']
content = res['output']['text']
else: else:
usage = False usage = False
content = res content = res
data = content.replace(' .', '.').strip() data = content.replace(' .', '.').strip()
answer_user = answer_id.mapped('user_ids')[:1] answer_user = answer_id.mapped('user_ids')[:1]
if usage: if usage:
prompt_tokens = usage['prompt_tokens'] if self.provider == 'ali':
completion_tokens = usage['completion_tokens'] prompt_tokens = usage['input_tokens']
total_tokens = usage['total_tokens'] completion_tokens = usage['output_tokens']
total_tokens = usage['input_tokens'] + usage['output_tokens']
else:
prompt_tokens = usage['prompt_tokens']
completion_tokens = usage['completion_tokens']
total_tokens = usage['total_tokens']
# 不是写到 user ,是要写到指定 m2m 相关模型, 如: res.partner.ai.use # 不是写到 user ,是要写到指定 m2m 相关模型, 如: res.partner.ai.use
ai_use = self.env['res.partner.ai.use'].search([('name', '=', author_id.id)], limit=1) ai_use = self.env['res.partner.ai.use'].search([('name', '=', author_id.id)], limit=1)
ask_date = fields.Datetime.now() ask_date = fields.Datetime.now()

View File

@@ -152,9 +152,14 @@ class Channel(models.Model):
res = res.replace('\n', '<br/>') res = res.replace('\n', '<br/>')
new_msg = channel.with_user(user_id).message_post(body=res, message_type='comment', subtype_xmlid='mail.mt_comment', parent_id=message.id) new_msg = channel.with_user(user_id).message_post(body=res, message_type='comment', subtype_xmlid='mail.mt_comment', parent_id=message.id)
if usage: if usage:
prompt_tokens = usage['prompt_tokens'] if ai.provider == 'ali':
completion_tokens = usage['completion_tokens'] prompt_tokens = usage['input_tokens']
total_tokens = usage['total_tokens'] completion_tokens = usage['output_tokens']
total_tokens = usage['input_tokens'] + usage['output_tokens']
else:
prompt_tokens = usage['prompt_tokens']
completion_tokens = usage['completion_tokens']
total_tokens = usage['total_tokens']
new_msg.write({ new_msg.write({
'human_prompt_tokens': prompt_tokens, 'human_prompt_tokens': prompt_tokens,
'ai_completion_tokens': completion_tokens, 'ai_completion_tokens': completion_tokens,