songquanpeng / one-api

OpenAI 接口管理 & 分发系统,支持 Azure、Anthropic Claude、Google PaLM 2 & Gemini、智谱 ChatGLM、百度文心一言、讯飞星火认知、阿里通义千问、360 智脑以及腾讯混元,可用于二次分发管理 key,仅单可执行文件,已打包好 Docker 镜像,一键部署,开箱即用. OpenAI key management & redistribution system, using a single API for all LLMs, and features an English UI.
https://openai.justsong.cn/
MIT License
19.44k stars 4.32k forks source link

max_tokens不起作用 #1650

Open lonrencn opened 4 months ago

lonrencn commented 4 months ago

例行检查

问题描述

设置max_tokens不起作用, 复现步骤 image moonshot deepseek都是2k 智谱是1024 都是默认大小max_tokens不起作用 预期结果 应该返回4千左右的文本长度,但是达不到都是各自默认长度

QAbot-zh commented 4 months ago

max_tokens 是最大输出限制,不是输出文本的默认长度,比如你设置 max_tokens = 10,它模型输出超过 10 就会截断,但不是一定会到 10。

lonrencn commented 4 months ago

max_tokens 是最大输出限制,不是输出文本的默认长度,比如你设置 max_tokens = 10,它模型输出超过 10 就会截断,但不是一定会到 10。

这我知道,我要求他根据条件生成一个5000字的故事,故事每次都是大约2000字,智谱是1000字,智谱有时还会说由于篇幅限制,5000字故事的大纲是……

Tim-Saijun commented 4 months ago

不是bug,你直接调官方的也这样

lonrencn commented 4 months ago

不是bug,你直接调官方的也这样

有什么办法吗?不是声称能到4k 8k吗

QAbot-zh commented 4 months ago

不是bug,你直接调官方的也这样

有什么办法吗?不是声称能到4k 8k吗

你理解错了。大模型没有那么智能,不会因为你设置了max_tokens=1000,就真的写几百字来解答1+1等于几的问题,它的输出受到很多限制,其中之一就是提问的内容。

lonrencn commented 4 months ago

不是bug,你直接调官方的也这样

有什么办法吗?不是声称能到4k 8k吗

你理解错了。大模型没有那么智能,不会因为你设置了max_tokens=1000,就真的写几百字来解答1+1等于几的问题,它的输出受到很多限制,其中之一就是提问的内容。

我知道你的意思,如果没有内容,大模型不会无谓的生成长文本。 所以我给他很多的资料,让他整理成一个长文本的故事。 需求肯定是没问题,只是长度明显不够。

而且大模型的策略明显是尽可能压缩输出,能少说不多说。

future2233 commented 4 months ago

提示词里给段落设置,要求输出12~20段话