xusenlinzy/api-for-open-llm

使用baichuan2-13b-chat模型,回答的乱码,代码写不出来

Closed this issue · 2 comments

提交前必须检查以下项目 | The following items must be checked before submission

  • 请确保使用的是仓库最新代码(git pull),一些问题已被解决和修复。 | Make sure you are using the latest code from the repository (git pull), some issues have already been addressed and fixed.
  • 我已阅读项目文档FAQ章节并且已在Issue中对问题进行了搜索,没有找到相似问题和解决方案 | I have searched the existing issues / discussions

问题类型 | Type of problem

模型推理和部署 | Model inference and deployment

操作系统 | Operating system

Linux

详细描述问题 | Detailed description of the problem

.env配置如下
PORT=8000

model related

MODEL_NAME=baichuan-13b-chat
MODEL_PATH=/models/baichuan2-13b-chat
PROMPT_NAME=

rag related

EMBEDDING_NAME=
RERANK_NAME=

api related

API_PREFIX=/v1

vllm related

ENGINE=vllm
TRUST_REMOTE_CODE=true
TOKENIZE_MODE=auto

GPU数量

TENSOR_PARALLEL_SIZE=2
DTYPE=auto

TASKS=llm

TASKS=llm,rag

调用方式:
os.environ["OPENAI_API_BASE"] = api_url
os.environ["OPENAI_API_KEY"] = api_key

from langchain.chat_models import ChatOpenAI
from langchain.schema import (
HumanMessage
)

chat = ChatOpenAI()

print(chat([HumanMessage(content="使用python写一段基于minist的分类模型代码")]))

print(chat([HumanMessage(content="介绍下杭州")]))

content='你好,有什么我可以帮助您的吗?' additional_kwargs={}

结果如下:
写代码:
content='在实现一个基于MINIST的数据集时,考虑到数据的大小和处理能力,我们通常需要遵循以下步骤:\n\n1. 理解数据和问题:首先,我们需要了解数据集的结构和特征,以及我们要解决的问题。这可以通过查看数据集的描述、文档和研究实例来实现。\n\n2. 准备环境:根据所需的工具和技术,设置适当的编程语言、库和框架。这可能包括安装新的软件包、设置虚拟环境或创建新的项目。\n\n3. 数据预处理:在进行任何分析之前,我们需要对数据进行清洗和预处理。这可能包括处理缺失值、异常值、重复项和数据转换。\n\n4. 特征工程:根据问题的性质,我们可能需要从原始数据中创建新的特征,以提高模型的性能。这可能包括特征选择、特征缩放和特征编码。\n\n5. 模型选择和训练:选择一个合适的机器学习算法,并使用训练数据集对其进行训练。这可能包括调整模型的超参数、验证模型性能和选择最佳的模型。\n\n6. 模型评估和优化:使用测试数据集评估模型的性能,并根据需要进行优化。这可能包括调整模型的超参数、使用不同的评估指标和方法,以及尝试其他模型。\n\n7. 部署和应用:将训练好的模型部署到生产环境中,并实际应用于解决问题。这可能包括将模型集成到现有的应用程序中、监控模型性能和更新模型。\n\n在整个过程中,我们需要密切关注数据集的特点和处理需求,以确保我们的方法和技术能够满足这些要求。这可能包括选择合适的算法、调整模型参数和使用合适的评估方法。' additional_kwargs={} example=False
没给出代码。

询问杭州信息:
content='\n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\

请问是目前不支持baichuan2吗,还是配置不对,需要在哪里修改,如果增加新的其他模型,我对应的需要修改哪些地方

Dependencies

peft 0.10.0
sentence-transformers 2.6.1
torch 2.1.2
transformers 4.39.3
transformers-stream-generator 0.0.5

运行日志或截图 | Runtime logs or screenshots

baichuan2

支持baichuan2,加上下面的环境变量试试呢
PROMPT_NAME=baichuan2

一般来说如果需要增加新的其他模型,可以在https://github.com/xusenlinzy/api-for-open-llm/blob/master/api/adapter/template.py 中添加对话模板,然后启动模型的时候指定对话模板就行

@xusenlinzy ,是的,我增加了PROMPT_NAME=baichuan2,修改了MODEL_NAME=baichuan2-13b-chat,可以运行了。因为已经使用了vllm加速推理了,如果还想增加推理速度,还有什么好的建议吗,感谢