
Gollama เป็นเครื่องมือ MacOS / Linux สำหรับการจัดการรุ่น Ollama
มันมี TUI (อินเทอร์เฟซผู้ใช้ข้อความ) สำหรับการแสดงรายการตรวจสอบลบการคัดลอกและการผลักดันโมเดล Ollama รวมถึงการเชื่อมโยงทางเลือกกับ LM Studio*
แอปพลิเคชันช่วยให้ผู้ใช้สามารถเลือกรุ่นเรียงลำดับตัวกรองแก้ไขเรียกใช้งานยกเลิกการโหลดและดำเนินการกับพวกเขาโดยใช้คีย์

โครงการเริ่มต้นจากการเขียนโครงการ Llamalink ของฉันใหม่ แต่ฉันตัดสินใจที่จะขยายเพื่อรวมคุณสมบัติเพิ่มเติมและทำให้เป็นมิตรกับผู้ใช้มากขึ้น
มันอยู่ในการพัฒนาที่ใช้งานอยู่ดังนั้นจึงมีข้อบกพร่องและคุณสมบัติที่ขาดหายไป แต่ฉันพบว่ามันมีประโยชน์สำหรับการจัดการโมเดลของฉันทุกวันโดยเฉพาะอย่างยิ่งสำหรับการทำความสะอาดรุ่นเก่า
ดูเพิ่มเติม - Ingest สำหรับการส่งผ่านไดเรกทอรี/repos ของรหัสไปยัง markdown ที่จัดรูปแบบสำหรับ LLMS
Gollama Intro ("Podcast" ตอน):
go install github.com/sammcj/gollama@HEADฉันไม่แนะนำวิธีนี้เพราะมันไม่ง่ายต่อการอัปเดต แต่คุณสามารถใช้คำสั่งต่อไปนี้:
curl -sL https://raw.githubusercontent.com/sammcj/gollama/refs/heads/main/scripts/install.sh | bashดาวน์โหลดรีลีสล่าสุดจากหน้าเผยแพร่และแยกไบนารีไปยังไดเรกทอรีในเส้นทางของคุณ
zip -d gollama*.zip -d gollama && mv gollama /usr/local/bin
ในการเรียกใช้แอปพลิเคชัน gollama ให้ใช้คำสั่งต่อไปนี้:
gollama เคล็ดลับ : ฉันชอบนามแฝง Gollama ถึง g เพื่อเข้าถึงอย่างรวดเร็ว:
echo " alias g=gollama " >> ~ /.zshrcSpace : เลือกEnter : Run Model (Ollama Run)i : ตรวจสอบโมเดลt : TOP (SHOW Running Models)D : ลบโมเดลe : แก้ไขโมเดล ใหม่c : สำเนาโมเดลU : ขนถ่ายทุกรุ่นp : ดึงโมเดลที่มีอยู่ ใหม่g : ดึง (รับ) รุ่นใหม่ ใหม่P : โมเดลผลักดันn : เรียงตามชื่อs : เรียงลำดับตามขนาดm : เรียงลำดับโดยแก้ไขk : เรียงลำดับตามปริมาณf : เรียงลำดับโดยครอบครัวl : ลิงก์โมเดลไปยัง LM StudioL : ลิงก์ทุกรุ่นไปยัง LM Studior : Rename Model (กำลังดำเนินการอยู่)q : เลิก ด้านบน ( t )

ตรวจสอบ ( i )

ลิงค์ ( l ) และลิงก์ทั้งหมด ( L )
หมายเหตุ: ต้องการสิทธิ์ผู้ดูแลระบบหากคุณกำลังใช้ Windows
-l : แสดงรายการ Ollama Models and Exit ทั้งหมดที่มีอยู่-L : ลิงก์รุ่น Ollama ที่มีอยู่ทั้งหมดไปยัง LM Studio และ Exit-s <search term> : ค้นหาโมเดลตามชื่อ'term1|term2' ) ส่งคืนโมเดลที่ตรงกับคำใดคำหนึ่ง'term1&term2' ) ส่งคืนโมเดลที่ตรงกับทั้งคำศัพท์-e <model> : แก้ไข modelfile สำหรับโมเดล-ollama-dir : ไดเรกทอรีโมเดล Ollama ที่กำหนดเอง-lm-dir : ไดเรกทอรีโมเดล LM LM แบบกำหนดเอง-cleanup : ลบโมเดล Symlinked ทั้งหมดและไดเรกทอรีที่ว่างเปล่าและออก-no-cleanup : อย่าทำความสะอาด symlink ที่หัก-u : ยกเลิกการโหลดทุกรุ่นที่กำลังทำงานอยู่-v : พิมพ์เวอร์ชันและออก-h หรือ --host : ระบุโฮสต์สำหรับ Ollama API-H : ทางลัดสำหรับ -h http://localhost:11434 (เชื่อมต่อกับ Local Ollama API) ใหม่--vram : ประมาณการการใช้ VRAM สำหรับแบบจำลอง ยอมรับ:llama3.1:8b-instruct-q6_K , qwen2:14b-q4_0 )NousResearch/Hermes-2-Theta-Llama-3-8B )--fits : หน่วยความจำที่มีอยู่ใน GB สำหรับการคำนวณบริบท (เช่น 6 สำหรับ 6GB)--vram-to-nth หรือ --context : ความยาวบริบทสูงสุดในการวิเคราะห์ (เช่น 32k หรือ 128k )--quant : แทนที่ระดับปริมาณ (เช่น Q4_0 , Q5_K_M ) Gollama ยังสามารถเรียกใช้กับ -l เพื่อแสดงรายการโมเดลโดยไม่ต้องใช้ TUI
gollama -l รายการ ( gollama -l ):

Gollama สามารถเรียกใช้กับ -e เพื่อแก้ไข modelfile สำหรับโมเดล
gollama -e my-model Gollama สามารถเรียกใช้กับ -s เพื่อค้นหาโมเดลตามชื่อ
gollama -s my-model # returns models that contain 'my-model'
gollama -s ' my-model|my-other-model ' # returns models that contain either 'my-model' or 'my-other-model'
gollama -s ' my-model&instruct ' # returns models that contain both 'my-model' and 'instruct' Gollama มีคุณสมบัติการประมาณ VRAM ที่ครอบคลุม:
my-model:mytag ) หรือ ID Model HuggingFace (เช่น author/name )
เพื่อประเมินการใช้งาน RAM (v):
gollama --vram llama3.1:8b-instruct-q6_K
VRAM Estimation for Model: llama3.1:8b-instruct-q6_K
| QUANT | CTX | BPW | 2K | 8K | 16K | 32K | 49K | 64K |
| ------- | ---- | --- | --- | --------------- | --------------- | --------------- | --------------- |
| IQ1_S | 1.56 | 2.2 | 2.8 | 3.7(3.7,3.7) | 5.5(5.5,5.5) | 7.3(7.3,7.3) | 9.1(9.1,9.1) |
| IQ2_XXS | 2.06 | 2.6 | 3.3 | 4.3(4.3,4.3) | 6.1(6.1,6.1) | 7.9(7.9,7.9) | 9.8(9.8,9.8) |
| IQ2_XS | 2.31 | 2.9 | 3.6 | 4.5(4.5,4.5) | 6.4(6.4,6.4) | 8.2(8.2,8.2) | 10.1(10.1,10.1) |
| IQ2_S | 2.50 | 3.1 | 3.8 | 4.7(4.7,4.7) | 6.6(6.6,6.6) | 8.5(8.5,8.5) | 10.4(10.4,10.4) |
| IQ2_M | 2.70 | 3.2 | 4.0 | 4.9(4.9,4.9) | 6.8(6.8,6.8) | 8.7(8.7,8.7) | 10.6(10.6,10.6) |
| IQ3_XXS | 3.06 | 3.6 | 4.3 | 5.3(5.3,5.3) | 7.2(7.2,7.2) | 9.2(9.2,9.2) | 11.1(11.1,11.1) |
| IQ3_XS | 3.30 | 3.8 | 4.5 | 5.5(5.5,5.5) | 7.5(7.5,7.5) | 9.5(9.5,9.5) | 11.4(11.4,11.4) |
| Q2_K | 3.35 | 3.9 | 4.6 | 5.6(5.6,5.6) | 7.6(7.6,7.6) | 9.5(9.5,9.5) | 11.5(11.5,11.5) |
| Q3_K_S | 3.50 | 4.0 | 4.8 | 5.7(5.7,5.7) | 7.7(7.7,7.7) | 9.7(9.7,9.7) | 11.7(11.7,11.7) |
| IQ3_S | 3.50 | 4.0 | 4.8 | 5.7(5.7,5.7) | 7.7(7.7,7.7) | 9.7(9.7,9.7) | 11.7(11.7,11.7) |
| IQ3_M | 3.70 | 4.2 | 5.0 | 6.0(6.0,6.0) | 8.0(8.0,8.0) | 9.9(9.9,9.9) | 12.0(12.0,12.0) |
| Q3_K_M | 3.91 | 4.4 | 5.2 | 6.2(6.2,6.2) | 8.2(8.2,8.2) | 10.2(10.2,10.2) | 12.2(12.2,12.2) |
| IQ4_XS | 4.25 | 4.7 | 5.5 | 6.5(6.5,6.5) | 8.6(8.6,8.6) | 10.6(10.6,10.6) | 12.7(12.7,12.7) |
| Q3_K_L | 4.27 | 4.7 | 5.5 | 6.5(6.5,6.5) | 8.6(8.6,8.6) | 10.7(10.7,10.7) | 12.7(12.7,12.7) |
| IQ4_NL | 4.50 | 5.0 | 5.7 | 6.8(6.8,6.8) | 8.9(8.9,8.9) | 10.9(10.9,10.9) | 13.0(13.0,13.0) |
| Q4_0 | 4.55 | 5.0 | 5.8 | 6.8(6.8,6.8) | 8.9(8.9,8.9) | 11.0(11.0,11.0) | 13.1(13.1,13.1) |
| Q4_K_S | 4.58 | 5.0 | 5.8 | 6.9(6.9,6.9) | 8.9(8.9,8.9) | 11.0(11.0,11.0) | 13.1(13.1,13.1) |
| Q4_K_M | 4.85 | 5.3 | 6.1 | 7.1(7.1,7.1) | 9.2(9.2,9.2) | 11.4(11.4,11.4) | 13.5(13.5,13.5) |
| Q4_K_L | 4.90 | 5.3 | 6.1 | 7.2(7.2,7.2) | 9.3(9.3,9.3) | 11.4(11.4,11.4) | 13.6(13.6,13.6) |
| Q5_K_S | 5.54 | 5.9 | 6.8 | 7.8(7.8,7.8) | 10.0(10.0,10.0) | 12.2(12.2,12.2) | 14.4(14.4,14.4) |
| Q5_0 | 5.54 | 5.9 | 6.8 | 7.8(7.8,7.8) | 10.0(10.0,10.0) | 12.2(12.2,12.2) | 14.4(14.4,14.4) |
| Q5_K_M | 5.69 | 6.1 | 6.9 | 8.0(8.0,8.0) | 10.2(10.2,10.2) | 12.4(12.4,12.4) | 14.6(14.6,14.6) |
| Q5_K_L | 5.75 | 6.1 | 7.0 | 8.1(8.1,8.1) | 10.3(10.3,10.3) | 12.5(12.5,12.5) | 14.7(14.7,14.7) |
| Q6_K | 6.59 | 7.0 | 8.0 | 9.4(9.4,9.4) | 12.2(12.2,12.2) | 15.0(15.0,15.0) | 17.8(17.8,17.8) |
| Q8_0 | 8.50 | 8.8 | 9.9 | 11.4(11.4,11.4) | 14.4(14.4,14.4) | 17.4(17.4,17.4) | 20.3(20.3,20.3) | ในการค้นหาประเภทปริมาณที่ดีที่สุดสำหรับข้อ จำกัด ของหน่วยความจำที่กำหนด (เช่น 6GB) คุณสามารถให้ --fits <number of GB> :
gollama --vram NousResearch/Hermes-2-Theta-Llama-3-8B --fits 6
VRAM Estimation for Model: NousResearch/Hermes-2-Theta-Llama-3-8B
| QUANT/CTX | BPW | 2K | 8K | 16K | 32K | 49K | 64K |
| --------- | ---- | --- | --- | ------------ | ------------- | -------------- | --------------- |
| IQ1_S | 1.56 | 2.4 | 3.8 | 5.7(4.7,4.2) | 9.5(7.5,6.5) | 13.3(10.3,8.8) | 17.1(13.1,11.1) |
| IQ2_XXS | 2.06 | 2.9 | 4.3 | 6.3(5.3,4.8) | 10.1(8.1,7.1) | 13.9(10.9,9.4) | 17.8(13.8,11.8) |
...สิ่งนี้จะแสดงตารางที่แสดงการใช้ VRAM สำหรับประเภทปริมาณและขนาดบริบทต่างๆ
ตัวประมาณ VRAM ทำงานโดย:
หมายเหตุ: ตัวประมาณจะพยายามใช้ CUDA VRAM หากมีมิฉะนั้นจะกลับไปที่ System RAM สำหรับการคำนวณ
Gollama ใช้ไฟล์การกำหนดค่า JSON ที่อยู่ที่ ~/.config/gollama/config.json ไฟล์การกำหนดค่ามีตัวเลือกสำหรับการเรียงลำดับคอลัมน์คีย์ API ระดับบันทึก ฯลฯ ...
ตัวอย่างการกำหนดค่า:
{
"default_sort" : " modified " ,
"columns" : [
" Name " ,
" Size " ,
" Quant " ,
" Family " ,
" Modified " ,
" ID "
],
"ollama_api_key" : " " ,
"ollama_api_url" : " http://localhost:11434 " ,
"lm_studio_file_paths" : " " ,
"log_level" : " info " ,
"log_file_path" : " /Users/username/.config/gollama/gollama.log " ,
"sort_order" : " Size " ,
"strip_string" : " my-private-registry.internal/ " ,
"editor" : " " ,
"docker_container" : " "
}strip_string สามารถใช้เพื่อลบคำนำหน้าออกจากชื่อรุ่นตามที่แสดงใน TUI สิ่งนี้จะมีประโยชน์หากคุณมีคำนำหน้าทั่วไปเช่นรีจิสทรีส่วนตัวที่คุณต้องการลบออกเพื่อวัตถุประสงค์ในการแสดงผลdocker_container - การทดลอง - ถ้าตั้งค่า Gollama จะพยายามดำเนินการรันใด ๆ ภายในคอนเทนเนอร์ที่ระบุeditor - Experimental - ถ้าตั้งค่า Gollama จะใช้ตัวแก้ไขนี้เพื่อเปิด Modelfile สำหรับการแก้ไข โคลนที่เก็บ:
git clone https://github.com/sammcj/gollama.git
cd gollamaสร้าง:
go get
make buildวิ่ง:
./gollama บันทึกสามารถพบได้ใน gollama.log ซึ่งเก็บไว้ใน $HOME/.config/gollama/gollama.log โดยค่าเริ่มต้น ระดับบันทึกสามารถตั้งค่าในไฟล์การกำหนดค่า
ยินดีต้อนรับ! กรุณาแยกที่เก็บและสร้างคำขอดึงด้วยการเปลี่ยนแปลงของคุณ
แซม | Jose Almaraz | Jose Roberto Almaraz | Oleksii filonenko | การเดินใต้ดิน | anrgct |
ขอขอบคุณผู้คนเช่น Matt Williams, Fahd Mirza และ AI Code King ที่ให้การยิงและให้ข้อเสนอแนะ
ลิขสิทธิ์© 2024 Sam McLeod
โครงการนี้ได้รับใบอนุญาตภายใต้ใบอนุญาต MIT ดูไฟล์ใบอนุญาตสำหรับรายละเอียด
<script src = "http://api.html5media.info/1.1.8/html5media.min.js"> </script>