text_to_sql_tmpl_str = """<s>### Instruction:\n{system_message}{user_message}\n\n### Response:\n{response}</s>"""
text_to_sql_inference_tmpl_str = """<s>### Instruction:\n{system_message}{user_message}\n\n### Response:\n"""
def _generate_prompt_sql(input, context, dialect="sqlite", output=""):
system_message = """You are a powerful text-to-SQL model. Your job is to answer questions about a database. You are given a question and context regarding one or more tables. You must output the SQL query that answers the question."""
user_message = f"""### Dialect:\n{dialect}\n### Input:\n{input}\n### Context:\n{context}\n### Response:\n"""
if output:
return text_to_sql_tmpl_str.format(system_message=system_message, user_message=user_message, response=output)
else:
return text_to_sql_inference_tmpl_str.format(system_message=system_message, user_message=user_message)
def generate_prompt(data_point):
full_prompt = _generate_prompt_sql(data_point["input"], data_point["context"], dialect="sqlite", output=data_point["output"])
return {"inputs": full_prompt}
train_data = [{"inputs": d["inputs"] for d in raw_train_data.map(generate_prompt)}]
save_jsonl(train_data, "train_data.jsonl")
val_data = [{"inputs": d["inputs"] for d in raw_val_data.map(generate_prompt)}]
save_jsonl(val_data, "val_data.jsonl")
这个过程概述了如何使用LlamaIndex和Gradient对claude-3-haiku-20240307模型进行文本到SQL任务的微调。如需更详细的指导,请参阅LlamaIndex documentation on fine-tuning1(https://github.com/run-llama/llama_index/blob/main/docs/docs/examples/finetuning/gradient/gradient_text2sql.ipynb)2(https://github.com/run-llama/llama_index/blob/main/docs/docs/use_cases/fine_tuning.md)3(https://github.com/run-llama/llama_index/blob/main/docs/docs/optimizing/fine-tuning/fine-tuning.md)。
1条答案
按热度按时间k2arahey1#
要使用LlamaIndex对Claude模型进行文本到SQL的微调,特别是使用
claude-3-haiku-20240307
版本,请按照以下步骤操作:加载并以所需格式保存数据集。
在验证数据和一个玩具数据集上评估微调后的模型。
这个过程概述了如何使用LlamaIndex和Gradient对
claude-3-haiku-20240307
模型进行文本到SQL任务的微调。如需更详细的指导,请参阅LlamaIndex documentation on fine-tuning1(https://github.com/run-llama/llama_index/blob/main/docs/docs/examples/finetuning/gradient/gradient_text2sql.ipynb)2(https://github.com/run-llama/llama_index/blob/main/docs/docs/use_cases/fine_tuning.md)3(https://github.com/run-llama/llama_index/blob/main/docs/docs/optimizing/fine-tuning/fine-tuning.md)。详细信息
关于Dosu
此响应旨在提供帮助并节省您的时间。它不是精确解决方案,而是您自己研究的起点。
请帮助我变得更有用!如果这有帮助,请留下👍,如果无关紧要,请留下👎。要继续对话,请提及@dosu。