使用说明
LoRA-常见问题解答(FAQ)汉密尔顿版
LoRA-FAQ Hamilton 是一个轻量级项目,它使用LoRA对GPT-2进行微调 亚历山大·汉密尔顿 维基百科页面。
然后,该模型被作为……暴露(或呈现)出来 MCP服务器工具因此,您可以使用任何兼容MCP的客户端进行查询,并按需获取汉密尔顿(Hamilton)的报价。
特点/特性
- 使用(某种方法)对GPT-2进行微调 LoRA(低秩适应,Low-Rank Adaptation) 使用Keras/TensorFlow。
- 使用从(某处)提取的文本 亚历山大·汉密尔顿 维基百科页面。
- 暴露了 MCP工具 称为;叫做
answer_faq(question)返回一句相关的汉密尔顿名言。 - 包括一个 FastAPI 服务 用于本地测试。
项目结构
lora_faq_hamilton/
data/ # Wikipedia source and processed quotes dataset
lora_train/ # Training scripts
serve/ # FastAPI inference service
mcp_server/ # MCP server exposing the answer_faq tool
LICENSES/ # Wikipedia CC BY-SA 4.0 license
README.md
设置
git clone https://github.com/yourname/lora_faq_hamilton.git
cd lora_faq_hamilton
python -m venv .venv && source .venv/bin/activate
# Install dependencies
pip install "tensorflow==2.16.*" "tensorflow-text==2.16.*" \
"keras>=3.3,<3.6" "keras-hub[nlp]>=0.16" \
fastapi uvicorn "pydantic<3" httpx mcp
对于Apple Silicon(M1/M2/M3):
pip install tensorflow-macos tensorflow-metal "tensorflow-text==2.16.*"
培训
- 下载并清理汉密尔顿的维基百科页面:
python lora_train/build_dataset.py
- 使用LoRA微调GPT-2:
python lora_train/train_lora_gpt2.py
工件将被保存到 artifacts/lora_gpt2_savedmodel/。
运行FastAPI服务
uvicorn serve.app:app --reload --port 8008
使用curl进行测试:
curl -X POST localhost:8008/answer \
-H 'content-type: application/json' \
-d '{"question":"national bank"}'
运行MCP服务器
python mcp_server/server.py
这揭示了一个工具:
answer_faq(question: str) -> str
将您的MCP兼容客户端(例如,Claude Desktop、Cursor)配置为连接到此服务器。
示例用法
输入:
Give me a quote about George Washington
输出:
"Hamilton served as George Washington's aide-de-camp..." — (Alexander Hamilton, Wikipedia)
Source: Wikipedia “Alexander Hamilton” (CC BY-SA 4.0).
许可与署名
- 这个项目包含了来自……的文本 亚历山大·汉密尔顿的维基百科文章.
- 内容遵循以下许可协议 知识共享署名-相同方式共享4.0国际许可协议。
- 许可证副本已随附在
LICENSES/WIKIPEDIA_CC_BY_SA_4.0.txt。