昇腾社区首页
中文
注册

类功能

功能描述

问答生成类,输入标题和正文,调用大模型根据该正文生成问答对。

函数原型

from mx_rag.cache import QAGenerate
QAGenerate(config: QAGenerationConfig)

参数说明

参数名

数据类型

可选/必选

说明

config

QAGenerationConfig

必选

QAGenerationConfig对象,生成QA的相关参数。

关于QAGenerationConfig原型说明请参见类QAGenerationConfig

调用示例

from paddle.base import libpaddle
from transformers import AutoTokenizer
from mx_rag.cache import QAGenerationConfig, QAGenerate
from mx_rag.llm import Text2TextLLM
from mx_rag.utils import ClientParam
llm = Text2TextLLM(base_url="https://ip:port/v1/chat/completions", model_name="llama3-chinese-8b-chat",
                   client_param=ClientParam(ca_file="/path/to/ca.crt"))
# 使用模型的tokenizer, 传入模型存放路径
tokenizer = AutoTokenizer.from_pretrained("/home/model/Llama3-8B-Chinese-Chat/", local_files_only=True)
# 可以调用MarkDownParser生成titles和contents
titles = ["2024年高考语文作文题目"]
contents = ['2024年高考语文作文试题\n新课标I卷\n阅读下面的材料,根据要求写作。(60分)\n'
            '随着互联网的普及、人工智能的应用,越来越多的问题能很快得到答案。那么,我们的问题是否会越来越少?\n'
            '以上材料引发了你怎样的联想和思考?请写一篇文章。'
            '要求:选准角度,确定立意,明确文体,自拟标题;不要套作,不得抄袭;不得泄露个人信息;不少于800字。']
config = QAGenerationConfig(titles, contents, tokenizer, llm, qas_num=1)
qa_generate = QAGenerate(config)
qas = qa_generate.generate_qa()
print(qas)