TH ▾

API ที่เข้ากันได้กับ OpenAI แบบไม่เซ็นเซอร์

รับคีย์ API
ต่อ 1M โทเคนอินพุต
$0.15
โทเคนเอาต์พุต / 1M
$0.50
บริบทของโทเคน
100,000
เครดิตทดลองใช้
$0.50
คำขอต่อนาที
300

วิธีรัน Dolphin LLM: การติดตั้งในเครื่อง vs API แบบโฮสต์ vs API แบบโฮสต์

อัปเดตล่าสุด

หน้านี้แสดงวิธีรัน dolphin llm ทั้งบนคอมพิวเตอร์ของคุณเองหรือผ่านเอนด์พอยต์แบบโฮสต์ และวิธีตัดสินใจเลือกระหว่างทั้งสองแบบ สรุปสั้นๆ คือแบบโลคอลฟรีต่อโทเคนแต่ต้องการหน่วยความจำและความอดทน ส่วนแบบโฮสต์ต้องการเพียงคีย์

คอมพิวเตอร์เดสก์ท็อปและเซิร์ฟเวอร์คลาวด์ที่เชื่อมต่อกันด้วยสะพานแห่งแสง เปรียบเทียบการตั้งค่า LLM แบบติดตั้งเองและแบบโฮสต์
ภาพประกอบโหลเหรียญข้างลำธารโทเคนที่ไหลเข้าสู่เทอร์มินัล

ประเด็นสำคัญ

  • การรันแบบโลคอลต้องการ RAM หรือ VRAM เพียงพอสำหรับไฟล์ที่ควอนไทซ์แล้วและแคชบริบท
  • Ollama เป็นจุดเริ่มต้นที่รวดเร็วที่สุด; llama.cpp ให้การควบคุมการควอนไทซ์และแฟลกได้มากกว่า
  • ทั้งสองแบบเปิดเซิร์ฟเวอร์สไตล์ OpenAI ทำให้โค้ดไคลเอนต์ชุดเดียวกันสามารถชี้ไปยังแบบโลคอลหรือแบบโฮสต์ได้
  • เอนด์พอยต์แบบโฮสต์มีค่าใช้จ่าย $0.15 ต่อ 1M โทเคนอินพุตและ $0.50 ต่อ 1M โทเคนเอาต์พุต และใช้เวลาไม่กี่นาทีในการตั้งค่า

ตัดสินใจก่อน: คุณมีฮาร์ดแวร์อะไรบ้าง?

หน่วยความจำคือตัวตัดสินทุกอย่าง โมเดลภาษาคือชุดตัวเลขขนาดใหญ่ และชุดตัวเลขทั้งหมดต้องอยู่ในหน่วยความจำเร็วขณะสร้างผลลัพธ์ การควอนไทซ์จะลดขนาดตัวเลขเหล่านั้น โมเดลที่ควอนไทซ์แบบ 4-bit ใช้พื้นที่ประมาณครึ่งไบต์ต่อพารามิเตอร์ ดังนั้นโมเดลที่มีพารามิเตอร์ 8 พันล้านตัวจะกินพื้นที่ประมาณ 5 GB และโมเดล 70 พันล้านตัวจะกินพื้นที่ประมาณ 40 GB ให้ถือว่าตัวเลขเหล่านี้เป็นค่าประมาณ เนื่องจากขนาดที่แท้จริงขึ้นอยู่กับรูปแบบการควอนไทซ์

นอกจากน้ำหนักโมเดลแล้ว คุณยังต้องการพื้นที่สำหรับแคชบริบท ซึ่งขยายตามความยาวของพรอมต์ ดังนั้นประวัติการจำลองบทบาทที่ยาวหรือเอกสารขนาดใหญ่จึงใช้หน่วยความจำมากกว่าคำถามสั้น ๆ ควรวางแผนสำหรับหน่วยความจำเพิ่มเติมอีกไม่กี่ GB ในบริบทระดับปานกลาง และมากขึ้นหากต้องการใช้พรอมต์ที่ยาว

  • แล็ปท็อป 8 GB ไม่มี GPU: ใช้ได้เฉพาะโมเดลขนาดเล็กและผลลัพธ์ช้า
  • Mac Apple Silicon ขนาด 16 ถึง 32 GB: โมเดลขนาดกลางทำงานได้ดีเพราะ CPU และ GPU ใช้หน่วยความจำร่วมกัน
  • GPU ผู้บริโภคหนึ่งตัวที่มี VRAM 12 ถึง 24 GB: โมเดลขนาดกลางด้วยความเร็วที่ดี
  • ขนาดใหญ่กว่านี้:ต้องใช้ GPU หลายตัวหรือเช่าเซิร์ฟเวอร์

วิธีที่ 1: Ollama ด้วยคำสั่งไม่กี่คำสั่ง

Ollama คือเส้นทางที่สั้นที่สุด มันดาวน์โหลดโมเดลที่ผ่านการควอนไทซ์ เริ่มเซิร์ฟเวอร์ในพื้นหลัง และให้พรอมต์แชท ติดตั้งจากเว็บไซต์ทางการสำหรับระบบปฏิบัติการของคุณ จากนั้นตรวจสอบว่าไลบรารีโมเดล Ollama แสดงแท็ก Dolphin รุ่นใดอยู่ เพราะชื่อและขนาดเปลี่ยนแปลงระหว่างการเผยแพร่

# replace <tag> with a Dolphin tag from the Ollama library
ollama pull <tag>
ollama run <tag>

คำสั่งแรกดาวน์โหลดไฟล์ซึ่งอาจใช้เวลานานบนการเชื่อมต่อที่ช้า คำสั่งที่สองเปิดแชทแบบโต้ตอบในเทอร์มินัล Ollama ยังให้บริการ HTTP API บนเครื่องของคุณ รวมถึงเส้นทางสไตล์ OpenAI ภายใต้ /v1 เพื่อให้โปรแกรมอื่นสามารถใช้งานได้

หากการสร้างข้อความช้ามาก โมเดลอาจไม่พอดีกับ VRAM และบางส่วนทำงานบน CPU ให้เลือกแท็กที่เล็กลงหรือการควอนไทซ์แบบบิตต่ำ

วิธีที่ 2: llama.cpp เพื่อการควบคุมที่มากขึ้น

llama.cpp คือเครื่องยนต์ C++ ที่เครื่องมืออื่นๆ อีกมากมายสร้างขึ้นมา คุณดาวน์โหลดไฟล์ GGUF ของโมเดล จากนั้นเริ่มเซิร์ฟเวอร์ของมัน ขั้นตอนเหล่านี้มากกว่า Ollama แต่ช่วยให้คุณตั้งค่าความยาวของหน้าต่างบริบท จำนวนเลเยอร์ที่วางบน GPU และการควอนไทซ์ที่ต้องการได้

# after building llama.cpp and downloading a GGUF file
llama-server -m ./model.gguf -c 8192 -ngl 99 --port 8080

ที่นี่ -c กำหนดความยาวของบริบท, -ngl กำหนดจำนวนเลเยอร์ที่จะส่งไปยัง GPU และ --port เลือกพอร์ต ตรวจสอบ README ของโปรเจกต์สำหรับตัวเลือกในเวอร์ชันของคุณเนื่องจากมีการเปลี่ยนแปลงอยู่เสมอ การใช้ -c ที่มากขึ้นจะใช้พื้นที่มากขึ้น ดังนั้นให้เพิ่มเฉพาะเมื่อคุณต้องการเท่านั้น

สำหรับการใช้งานแบบกราฟิก front ends เช่น Open WebUI สามารถเชื่อมต่อกับเซิร์ฟเวอร์ตัวใดก็ได้ บันทึกของเราเกี่ยวกับ endpoint API ของ Open WebUI แสดงวิธีเพิ่ม endpoint แบบกำหนดเอง

การเรียกใช้เซิร์ฟเวอร์ท้องถิ่นจากโค้ด

เครื่องมือทั้งสองรองรับรูปแบบแชทของ OpenAI ดังนั้นคุณจึงเขียนไคลเอนต์เพียงครั้งเดียวแล้วเปลี่ยนเป้าหมายด้วยการตั้งค่าสองค่า สคริปต์นี้จัดวางเป้าหมายทั้งสองไว้เคียงข้างกัน เวอร์ชันท้องถิ่นใช้พอร์ตที่ Ollama ใช้เป็นค่าเริ่มต้น; เปลี่ยนแปลงค่านี้หากคุณเริ่ม llama.cpp บนพอร์ต 8080

from openai import OpenAI

TARGETS = {
    "local": {"base_url": "http://localhost:11434/v1", "key": "not-needed", "model": "your-local-tag"},
    "hosted": {"base_url": "https://api.dolphinllm.com/v1", "key": "YOUR_KEY", "model": "uncensored"},
}

t = TARGETS["hosted"]
client = OpenAI(base_url=t["base_url"], api_key=t["key"])

resp = client.chat.completions.create(
    model=t["model"],
    messages=[{"role": "user", "content": "Summarize what a GGUF file is."}],
)
print(resp.choices[0].message.content)

เซิร์ฟเวอร์ท้องถิ่นมักละเว้นคีย์ แต่ SDK ต้องการสตริงไม่ว่าง ชื่อโมเดลสำหรับเซิร์ฟเวอร์ท้องถิ่นคือแท็กหรือ alias ที่คุณโหลด ส่วน hosted model ID คือ uncensored

วิธีที่ 3: ข้ามการตั้งค่าและใช้เอนด์พอยต์แบบโฮสต์

หากการคำนวณฮาร์ดแวร์ดูไม่ดี หรือคุณต้องการพฤติกรรมเดียวกันในทุกเครื่อง hosted endpoint จะใช้งานง่ายกว่า บริการนี้ให้โมเดล open-weight หนึ่งตัว ซึ่งรันโดยผู้ให้บริการอิสระและปรับแต่งเพื่อตอบคำถามโดยไม่มีการปฏิเสธเนื้อหาสำหรับการใช้งานผู้ใหญ่ที่ถูกต้องตามกฎหมาย นี่ไม่ใช่ API ทางการของผู้ขายโมเดลใด ๆ และไม่สามารถเลือกโมเดลอื่นได้ สิ่งที่คุณได้รับคือ URL ที่เสถียร คีย์ และการเรียกเก็บเงินตามโทเคน

ขั้นตอนสั้นมาก ลงทะเบียนด้วย Google หรืออีเมลและรหัสผ่าน เปิด หน้าคีย์ API และรับเครดิตทดลองใช้ $0.50 ด้วยคลิกเดียว ไม่ต้องใช้บัตรเครดิต ใช้ได้เป็นเวลา 7 วัน และจำกัดเพียงหนึ่งต่อคน จากนั้นรันสคริปต์ Python ด้านบนโดยกำหนดเป้าหมายเป็นแบบโฮสต์ หากต้องการใช้ curl:

curl https://api.dolphinllm.com/v1/chat/completions   -H "Authorization: Bearer YOUR_KEY"   -H "Content-Type: application/json"   -d '{"model":"uncensored","messages":[{"role":"user","content":"Hello"}],"stream":false}'

หน้าต่างบริบทมีขนาด 100,000 โทเคน ซึ่งมากกว่าที่แล็ปท็อปส่วนใหญ่จะรองรับในแคชได้อย่างสะดวก พรอมต์ไม่ถูกใช้ในการฝึกฝน

เปรียบเทียบต้นทุนและความพยายาม

แบบท้องถิ่นดูเหมือนฟรี แต่ไม่ใช่ คุณต้องจ่ายค่าฮาร์ดแวร์ ค่าไฟฟ้า และเวลาของคุณเอง แบบโฮสต์คิดค่าใช้จ่ายต่อคำขอ แต่ตัวเลขมีขนาดเล็ก ที่ $0.15 ต่อ 1M โทเคนอินพุต และ $0.50 ต่อ 1M โทเคนเอาต์พุต ค่าใช้จ่ายต่อรอบแชทที่มี 3,000 โทเคนอินพุตและ 700 โทเคนเอาต์พุตคือ:

  • อินพุต: 3,000 x $0.15 / 1,000,000 = $0.00045
  • เอาต์พุต: 700 x $0.50 / 1,000,000 = $0.00035
  • รวม: $0.0008 ต่อรอบ ดังนั้น $0.80 ต่อ 1,000 รอบ

แม้ผู้ใช้หนักที่ส่ง 5,000 รอบเช่นนี้ในเดือนเดียวก็ใช้จ่ายเพียงประมาณ $4 เท่านั้น GPU ที่ราคาหลายร้อยดอลลาร์ต้องใช้เวลานานหลายปีก่อนที่จะคุ้มทุนกับปริมาณนี้ การเปรียบเทียบจะเปลี่ยนไปเมื่อคุณมีปริมาณการใช้งานสูงอย่างต่อเนื่อง ต้องการ fine-tune เฉพาะ หรือไม่สามารถส่งข้อมูลออกจากเครื่องของคุณได้

รายละเอียดราคาเต็ม รวมถึงโบนัสการเติมเงิน +5%, +10% และ +15% มีอยู่ใน หน้าราคา และ เอกสารประกอบ ครอบคลุมขีดจำกัดและพารามิเตอร์

กฎง่ายๆ ในการเลือก

รันในเครื่องหากคุณต้องการทดลองกับ fine-tunes หลายตัว ทำงานออฟไลน์ หรือเก็บทุก prompt บนดิสก์ของคุณเอง ใช้ hosted endpoint หากคุณกำลังสร้างแอปพลิเคชันที่ผู้อื่นจะใช้ หากฮาร์ดแวร์ของคุณมีจำกัด หรือหากคุณต้องการหน้าต่างบริบท 100,000 โทเคนที่ยาวนานโดยไม่ต้องจัดการหน่วยความจำ นักพัฒนาหลายคนใช้ทั้งสองอย่าง: โมเดลในเครื่องสำหรับการทดลองส่วนตัว และ hosted endpoint สำหรับสิ่งที่ต้องทำงานต่อเนื่อง เนื่องจากโค้ดไคลเอนต์เหมือนกัน การเปลี่ยนจึงใช้เวลาเพียงบรรทัดเดียว

ถาม-ตอบ

ฉันต้องการ RAM กี่หน่วยเพื่อรันโมเดล Dolphin?

โดยประมาณ โมเดลที่ quantize แบบ 4-bit ต้องการหน่วยความจำประมาณครึ่งไบต์ต่อพารามิเตอร์ รวมถึงหน่วยความจำสำหรับหน้าต่างบริบท โมเดลขนาด 8 พันล้านพารามิเตอร์ใช้พื้นที่ประมาณ 5 ถึง 8 GB ส่วนโมเดลขนาด 70 พันล้านพารามิเตอร์ต้องการพื้นที่ประมาณ 40 GB ขึ้นไป

สามารถรันได้โดยไม่ต้องใช้ GPU หรือไม่?

ได้ บน CPU พร้อม RAM เพียงพอ แต่การ generate จะช้าสำหรับโมเดลขนาดใหญ่ Mac Apple Silicon ทำงานได้ดีกว่าเพราะหน่วยความจำถูกแชร์

โค้ดไคลเอนต์สำหรับการใช้งานในเครื่องและแบบโฮสต์เหมือนกันหรือไม่?

ส่วนใหญ่เหมือนกัน ทั้งสองแบบรองรับคำขอแชทสไตล์ OpenAI ดังนั้นคุณจึงเปลี่ยนเฉพาะ base URL, คีย์ API และชื่อโมเดล

มีวิธีฟรีสำหรับลองใช้ตัวเลือกแบบโฮสต์หรือไม่?

ผู้ใช้ใหม่สามารถรับเครดิตทดลองใช้มูลค่า $0.50 ได้เพียงคลิกเดียวหลังจากสมัครสมาชิก ไม่ต้องใช้บัตรและใช้งานได้ 7 วัน

คีย์ของคุณอยู่ห่างแค่ขั้นตอนเดียว

สร้างบัญชี คัดลอกคีย์ และเปลี่ยน base URL นั่นคือการตั้งค่าทั้งหมด

รับคีย์ API