VI ▾

API tương thích OpenAI không kiểm duyệt

Lấy khóa API
trên mỗi 1M token đầu vào
$0,15
Token output / 1M
$0,50
ngữ cảnh token
100.000
tín dụng dùng thử
$0,50
yêu cầu mỗi phút
300

Cách chạy LLM Dolphin: Cài đặt cục bộ so với API lưu trữ

Cập nhật

Trang này hướng dẫn cách chạy dolphin llm trên máy tính của bạn hoặc thông qua endpoint lưu trữ, và cách quyết định giữa hai phương án. Tóm lại: cục bộ miễn phí theo token nhưng cần bộ nhớ và sự kiên nhẫn; lưu trữ chỉ cần một khóa.

Máy tính để bàn và máy chủ đám mây được kết nối bằng cầu nối ánh sáng, so sánh các thiết lập LLM cục bộ và lưu trữ
Minh họa một lọ tiền xu bên cạnh dòng token chảy vào terminal

Điểm chính

  • Chạy cục bộ cần đủ RAM hoặc VRAM cho tệp lượng tử hóa cộng thêm cửa sổ ngữ cảnh.
  • Ollama là cách bắt đầu nhanh nhất; llama.cpp cung cấp nhiều quyền kiểm soát hơn về lượng tử hóa và các cờ.
  • Cả hai đều cung cấp máy chủ kiểu OpenAI, nên mã client giống nhau có thể trỏ đến cục bộ hoặc lưu trữ.
  • Endpoint lưu trữ có giá $0,15 cho mỗi 1M token đầu vào và $0,50 cho mỗi 1M token đầu ra, mất vài phút để thiết lập.

Hãy quyết định trước: bạn có phần cứng gì?

Bộ nhớ quyết định mọi thứ. Mô hình ngôn ngữ là một tập hợp số rất lớn, và toàn bộ tập hợp phải nằm trong bộ nhớ nhanh trong khi nó tạo ra. Lượng tử hóa thu nhỏ các số đó. Mô hình lượng tử hóa 4-bit chiếm khoảng nửa byte cho mỗi tham số, nên mô hình 8 tỷ tham số chiếm khoảng 5 GB, và mô hình 70 tỷ chiếm khoảng 40 GB. Hãy coi đây là các con số xấp xỉ vì kích thước chính xác phụ thuộc vào định dạng lượng tử hóa.

Ngoài trọng số, bạn cần không gian cho cửa sổ ngữ cảnh. Nó tăng theo độ dài prompt, nên lịch sử đóng vai trò dài hoặc tài liệu lớn tốn nhiều bộ nhớ hơn một câu hỏi ngắn. Hãy dành vài gigabyte bổ sung ở ngữ cảnh vừa phải, nhiều hơn nếu bạn đẩy về prompt dài.

  • Laptop 8 GB không GPU: chỉ mô hình nhỏ, xuất chậm.
  • Mac Apple Silicon 16 đến 32 GB: mô hình cỡ trung chạy tốt vì CPU và GPU chia sẻ bộ nhớ.
  • GPU người dùng đơn với 12 đến 24 GB VRAM: mô hình cỡ trung với tốc độ tốt.
  • Lớn hơn nữa: nhiều GPU hoặc máy chủ thuê.

Phương pháp 1: Ollama qua vài lệnh

Ollama là con đường ngắn nhất. Nó tải xuống một mô hình đã lượng tử hóa, khởi động máy chủ nền và cung cấp một prompt chat. Cài đặt nó từ trang chủ dành cho hệ điều hành của bạn, sau đó kiểm tra xem thư viện mô hình Ollama hiện liệt kê những tag nào của Dolphin, vì tên và kích thước thay đổi giữa các bản phát hành.

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

Lệnh đầu tiên tải xuống tệp, có thể mất thời gian trên kết nối chậm. Lệnh thứ hai mở chat tương tác trong terminal. Ollama cũng cung cấp API HTTP trên máy của bạn, bao gồm tuyến đường kiểu OpenAI dưới /v1, nên các chương trình khác có thể sử dụng nó.

Nếu quá trình sinh văn bản rất chậm, có thể mô hình không vừa vào VRAM và một phần của nó chạy trên CPU. Hãy chọn một tag nhỏ hơn hoặc lượng tử hóa ít bit hơn.

Phương pháp 2: llama.cpp để kiểm soát nhiều hơn

llama.cpp là engine C++ mà nhiều công cụ khác được xây dựng dựa trên đó. Bạn tải xuống tệp GGUF của mô hình, sau đó khởi động máy chủ của nó. Điều này đòi hỏi nhiều bước hơn Ollama nhưng cho phép bạn đặt độ dài ngữ cảnh, số lớp đặt trên GPU và lượng tử hóa bạn muốn.

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

Ở đây -c đặt độ dài ngữ cảnh, -ngl đặt số lớp đi đến GPU, và --port chọn cổng. Kiểm tra README của dự án để biết các cờ trong phiên bản của bạn, vì chúng thay đổi. -c lớn hơn sử dụng nhiều bộ nhớ hơn, nên chỉ tăng khi bạn cần.

Để sử dụng giao diện đồ họa, các giao diện người dùng như Open WebUI có thể kết nối với cả hai máy chủ. Ghi chú của chúng tôi về endpoint API Open WebUI cho thấy cách thêm một endpoint tùy chỉnh.

Gọi máy chủ cục bộ từ mã

Cả hai công cụ đều hỗ trợ định dạng chat OpenAI, vì vậy bạn chỉ cần viết client một lần và chuyển đổi mục tiêu bằng hai cài đặt. Script này giữ cả hai mục tiêu cạnh nhau. Mục cục bộ sử dụng cổng mà Ollama sử dụng theo mặc định; hãy thay đổi nó nếu bạn đã khởi động llama.cpp trên cổng 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)

Máy chủ cục bộ thường bỏ qua khóa, nhưng SDK yêu cầu chuỗi không rỗng. Tên mô hình cho máy chủ cục bộ là bất kỳ thẻ hoặc bí danh nào bạn đã tải, trong khi ID mô hình lưu trữ luôn là uncensored.

Phương pháp 3: bỏ qua thiết lập và dùng endpoint lưu trữ

Nếu tính toán phần cứng không tốt, hoặc bạn muốn hành vi giống nhau trên mọi máy, một endpoint được lưu trữ sẽ đơn giản hơn. Dịch vụ này cung cấp một mô hình trọng số mở, do một nhà cung cấp độc lập vận hành và được tinh chỉnh để trả lời mà không từ chối nội dung cho mục đích sử dụng người trưởng thành hợp pháp. Đây không phải là API chính thức của bất kỳ nhà cung cấp mô hình nào, và nó không cho phép bạn chọn các mô hình khác. Những gì bạn nhận được là một URL ổn định, một khóa và thanh toán theo token.

Các bước rất ngắn. Đăng ký với Google hoặc với email và mật khẩu, mở trang khóa API và nhận $0,50 tín dụng dùng thử chỉ với một cú nhấp chuột. Không cần thẻ thanh toán, có hiệu lực trong 7 ngày và giới hạn mỗi người một lần. Sau đó chạy script Python ở trên với mục tiêu lưu trữ. Nếu bạn thích 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}'

Cửa sổ ngữ cảnh là 100.000 token, nhiều hơn hầu hết máy tính xách tay có thể giữ trong bộ nhớ cache một cách thoải mái. Prompt không được dùng để huấn luyện.

Chi phí và nỗ lực so sánh

Chạy cục bộ có vẻ miễn phí, nhưng không phải vậy. Bạn trả tiền cho phần cứng, điện và thời gian của chính mình. Dịch vụ lưu trữ tốn tiền cho mỗi yêu cầu, nhưng các con số rất nhỏ. Ở mức $0,15 cho 1 triệu token đầu vào và $0,50 cho 1 triệu token đầu ra, một lượt chat với 3.000 token đầu vào và 700 token đầu ra sẽ tốn:

  • Đầu vào: 3.000 x $0,15 / 1.000.000 = $0,00045
  • Đầu ra: 700 x $0,50 / 1.000.000 = $0,00035
  • Tổng cộng: $0,0008 cho mỗi lượt, tức là $0,80 cho 1.000 lượt

Ngay cả một người dùng nặng tải gửi 5.000 lượt như vậy trong một tháng cũng sẽ chi khoảng $4. Một GPU có giá trị hàng trăm đô la sẽ cần nhiều năm sử dụng để hòa vốn với khối lượng đó. Sự so sánh đảo ngược khi bạn có khối lượng cao liên tục, cần một mô hình tinh chỉnh cụ thể hoặc không thể gửi dữ liệu ra khỏi máy của mình.

Chi tiết giá đầy đủ, bao gồm các khoản thưởng nạp tiền +5%, +10% và +15%, có trên trang giá, và tài liệu bao gồm các giới hạn và tham số.

Một quy tắc đơn giản để chọn lựa

Chạy cục bộ nếu bạn muốn thử nghiệm với nhiều mô hình tinh chỉnh, làm việc ngoại tuyến hoặc giữ mọi prompt trên đĩa của riêng bạn. Sử dụng endpoint lưu trữ nếu bạn đang xây dựng thứ gì đó mà người khác sẽ sử dụng, nếu phần cứng của bạn khiêm tốn hoặc nếu bạn muốn một ngữ cảnh 100.000 token dài mà không cần quản lý bộ nhớ. Nhiều nhà phát triển làm cả hai: một mô hình cục bộ để tự mày mò riêng tư, và một endpoint lưu trữ cho bất cứ thứ gì cần hoạt động liên tục. Vì mã client giống nhau, việc chuyển đổi chỉ tốn một dòng.

Hỏi đáp

Tôi cần bao nhiêu RAM để chạy mô hình Dolphin?

Theo hướng dẫn sơ bộ, mô hình lượng tử hóa 4-bit cần khoảng nửa byte cho mỗi tham số cộng thêm bộ nhớ cho bộ nhớ đệm ngữ cảnh. Mô hình 8 tỷ tham số chiếm khoảng 5 đến 8 GB, mô hình 70 tỷ cần khoảng 40 GB trở lên.

Tôi có thể chạy nó mà không cần GPU không?

Có, trên CPU với đủ RAM, nhưng tốc độ xuất chậm với các mô hình lớn hơn mô hình nhỏ. Mac dùng chip Apple Silicon hoạt động tốt hơn vì bộ nhớ được chia sẻ.

Mã client cục bộ và lưu trữ có giống nhau không?

Chủ yếu. Cả hai đều chấp nhận yêu cầu chat kiểu OpenAI, nên bạn chỉ cần thay đổi base URL, khóa và tên mô hình.

Có cách miễn phí nào để dùng thử tùy chọn lưu trữ không?

Người dùng mới có thể nhận $0,50 tín dụng dùng thử chỉ với một cú nhấp chuột sau khi đăng ký. Không cần thẻ thanh toán và thời hạn sử dụng là 7 ngày.

Khóa của bạn chỉ cách một biểu mẫu

Tạo tài khoản, sao chép khóa, thay đổi URL cơ sở. Đó là toàn bộ thiết lập.

Lấy khóa API