當前位置: 妍妍網 > 碼農

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:求求啦! 在看 支持下吧!