增加token发问限制,api要求

This commit is contained in:
ivan deng
2023-04-27 22:54:56 +08:00
parent adbf5edcf5
commit d3c1e3ebe6
3 changed files with 20 additions and 5 deletions

View File

@@ -149,6 +149,7 @@ GPT-3 A set of models that can understand and generate natural language
# openai 格式处理
usage = res['usage']
content = res['choices'][0]['message']['content']
# _logger.warning('===========Ai响应:%s' % content)
else:
# azure 格式
usage = json.loads(json.dumps(res['usage']))
@@ -298,7 +299,7 @@ GPT-3 A set of models that can understand and generate natural language
except Exception as e:
_logger.warning("Get Response Json failed: %s", e)
else:
_logger.warning('=====================Openai output data: %s' % response)
_logger.warning('=====================Openai output data: %s' % response.json())
elif self.ai_model == 'dall-e2':
# todo: 处理 图像引擎,主要是返回参数到聊天中
# image_url = response['data'][0]['url']
@@ -378,7 +379,7 @@ GPT-3 A set of models that can understand and generate natural language
if 'choices' in response:
return response
else:
_logger.warning('=====================azure output data: %s' % response)
_logger.warning('=====================azure output data: %s' % response.json())
return _("Response Timeout, please speak again.")
@api.onchange('provider')

View File

@@ -197,9 +197,10 @@ class Channel(models.Model):
if c_history:
messages += c_history
messages.append({"role": "user", "content": msg})
# msg_len = sum(len(str(m)) for m in messages)
# if msg_len * 2 >= 2049:
# messages = [{"role": "user", "content": msg}]
msg_len = sum(len(str(m)) for m in messages)
# 接口最大接收 8430 Token
if msg_len * 2 >= 8000:
messages = [{"role": "user", "content": msg}]
if sync_config == 'sync':
self.get_ai_response(ai, messages, channel, user_id, message)
else: