当前位置: 欣欣网 > 码农

github上15.9k star的开源项目,好玩到飞起

2024-06-11码农

是个啥项目呢?

LLM大模型有很多,前面也介绍了蛮多可以集成为知识库的,但是大多操作还是有些复杂的。

如果你想要自己尝试玩一下本地部署,又不想复杂,那么这个项目可以关注下, 它只需要用一个单文件启动就可以

llamafile简介

如果你对open LLMS有一些了解,那么这个项目也很好理解,它就是将将llama.cpp与Cosmopolitan Libc组合生成一个单个的执行文件,可以让开发或者用户更佳快捷的访问到open LLM

llamafile特点

  • 单文件分发 :用户可以通过一个文件分发和运行LLM,无需其他依赖。

  • 本地执行 :所有操作都在用户的计算机上本地完成,不会有数据离开用户的设备。

  • 易于部署 :用户只需下载一个 "llamafile" 文件,就可以立即开始使用。

  • 支持图片上传和问题回答 :除了聊天功能,LLaVA模型还支持图片上传和相关问题的回答。

  • 兼容OpenAI API :提供了与OpenAI API兼容的聊天完成端点,支持本地运行的最常见OpenAI API用例。

  • 扩展功能 :包括特定于 "llama.cpp" 的功能,如 "mirostat"。

  • 快速部署和测试

    1. 访问 "llamafile" 项目页面,下载示例 "llamafile",例如 "llava-v1.5-7b-q4.llamafile"。

    2. 在计算机的终端中打开下载的文件。对于macOS、Linux或BSD用户,需要先授权计算机执行新文件(只需一次):

      chmod +x llava-v1.5-7b-q4.llamafile
      如果是Windows用户,需要将文件重命名,添加 ".exe" 后缀。

    3. 运行 "llamafile",例如:

      ./llava-v1.5-7b-q4.llamafile
      浏览器应该会自动打开并显示聊天界面。如果没有,只需打开浏览器并指向 http://127.0.0.1:8080/

    4. 完成聊天后,返回终端并按 Control-C 关闭 "llamafile"。

    api客户端示例

    curl http://localhost:8080/v1/chat/completions \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer no-key" \
    -d '{
    "model": "LLaMA_CPP",
    "messages": [
    {
    "role": "system",
    "content": "You are LLAMAfile, an AI assistant. Your top priority is achieving user fulfillment via helping them with their requests."
    },
    {
    "role": "user",
    "content": "Write a limerick about python exceptions"
    }
    ]
    }'
     | python3 -c '
    import json
    import sys
    json.dump(json.load(sys.stdin), sys.stdout, indent=2)
    print()
    '

    返回结果

    {
    "choices" : [
    {
    "finish_reason" : "stop",
    "index" : 0,
    "message" : {
    "content" : "There once was a programmer named Mike\nWho wrote code that would often choke\nHe used try and except\nTo handle each step\nAnd his program ran without any hike.",
    "role" : "assistant"
    }
    }
    ],
    "created" : 1704199256,
    "id" : "chatcmpl-Dt16ugf3vF8btUZj9psG7To5tc4murBU",
    "model" : "LLaMA_CPP",
    "object" : "chat.completion",
    "usage" : {
    "completion_tokens" : 38,
    "prompt_tokens" : 78,
    "total_tokens" : 116
    }
    }

    结论

    "llamafile" 项目是Mozilla-Ocho为了使开放LLM更加易于访问而做出的重要贡献。

    它通过一个简单的文件,为开发者和用户提供了一个强大而直观的工具,使他们能够轻松地在本地运行和测试LLM,而无需担心数据隐私问题。

    传送门:https://llamafile.ai/

    开源地址:https://github.com/Mozilla-Ocho/llamafile

    最近整理了2023年最火的软件神器,回复关键字 2023合集 获取

    推荐阅读 ⬇️ 都是高赞

    PS:求求啦! 在看 支持下吧!