- LiteLLM đóng vai trò như một cầu nối thống nhất, chuẩn hóa việc truy cập hơn 100 mô hình ngôn ngữ thông qua một API duy nhất tương thích với OpenAI.
- Việc triển khai bằng Docker cho phép bạn quản lý mọi thứ, từ giao diện quản trị đơn giản đến các triển khai phức tạp trên Kubernetes và các nền tảng điện toán đám mây công cộng.
- Hệ thống này cung cấp khả năng kiểm soát chi tiết về chi tiêu, bảo mật khóa và quản lý hạn mức thông qua việc sử dụng cơ sở dữ liệu PostgreSQL và Redis.
Hãy tưởng tượng công ty của bạn muốn tận dụng trí tuệ nhân tạo, nhưng lại gặp phải rào cản phân mảnh. Mỗi nhà cung cấp LLM, dù là OpenAI, Anthropic hay Google, đều có các quy tắc, định dạng yêu cầu và phương thức xác thực riêng. Giải pháp có thể bao gồm... Triển khai LiteLLM bằng Docker. Đối với một nhóm kỹ thuật, việc lãng phí những giờ quý báu để chỉnh sửa mã mỗi khi muốn thử nghiệm một mô hình mới hoặc thay đổi nhà cung cấp cuối cùng sẽ cản trở sự đổi mới và lãng phí nguồn lực không cần thiết.
LiteLLM Đây là một công cụ mã nguồn mở hoạt động như một trình phiên dịch đa năng. Về cơ bản, nó nằm giữa ứng dụng của bạn và các mô hình khác nhau, cung cấp cho bạn một... Giao diện đơn nhất tương thích với OpenAIBằng cách này, bạn có thể chuyển đổi từ mô hình Groq sang mô hình Claude hoặc thậm chí là Llama cục bộ chạy trên Ollama mà không cần phải viết lại bất kỳ dòng mã logic nghiệp vụ nào, giúp đơn giản hóa việc triển khai một cách đáng kinh ngạc.
Thiết lập nhanh chóng với Docker và Docker Compose
Nếu bạn muốn tránh các vấn đề về phụ thuộc và giữ cho hệ thống của mình sạch sẽ, Docker là giải pháp lý tưởng. Để bắt đầu, bạn có thể sao chép kho lưu trữ chính thức của BerriAI và cấu hình một tệp. Tạo tệp .env với LITELLM_MASTER_KEY của bạn. và một LITELLM_SALT_KEY. Tham số cuối cùng này rất quan trọng vì nó mã hóa thông tin đăng nhập của các nhà cung cấp mà bạn lưu trữ trong cơ sở dữ liệu; nếu bạn thay đổi nó sau này, bạn sẽ mất quyền truy cập vào các mô hình đã cấu hình.
Khi bạn đã chuẩn bị xong các tệp tin, một thao tác đơn giản docker-compose up Nó thiết lập cổng kết nối. Theo mặc định, dịch vụ được lưu trữ trên... cổng 4000Nếu bạn đang tìm kiếm giải pháp đơn giản hơn nữa, có những ảnh container được tạo sẵn tự động tạo khóa chính khi khởi động, bạn có thể lấy khóa này bằng cách kiểm tra nhật ký container. Đối với những người cần một hệ sinh thái hoàn chỉnh, việc kết hợp LiteLLM với là rất phổ biến. Mở giao diện WebUI Để có một giao diện trò chuyện trực quan và mạnh mẽ.
Ban quản trị và quản lý mô hình
Một trong những điểm nổi bật của LiteLLM là giao diện quản trị (Admin UI), có thể truy cập thông qua đường dẫn. /uiĐể đăng nhập, hãy sử dụng tên người dùng 'admin' và mật khẩu chính mà bạn đã thiết lập. Từ đây bạn có thể... Thêm mẫu bằng cách chọn nhà cung cấp Từ một danh mục được xác định trước, chỉ cần dán khóa API của bạn và xác minh kết nối chỉ bằng một cú nhấp chuột. Bạn không cần phải là chuyên gia YAML để quản lý các điểm cuối API của mình.
Nếu bạn muốn sử dụng dòng lệnh để triển khai LiteLLM với Docker, bạn có thể sử dụng tập lệnh sau: litellm_manage bởi vì docker execĐiều này cho phép bạn liệt kê các mô hình, thêm mô hình mới hoặc xóa những mô hình bạn không còn cần nữa mà không cần mở trình duyệt. Hơn nữa, nếu bạn làm việc với các mô hình địa phương thông qua OllamaBạn chỉ cần chỉ định URL máy chủ (thường là...) http://host.docker.internal:11434 (trên macOS hoặc Windows) và LiteLLM sẽ đảm nhiệm việc kết nối.
Kiểm soát truy cập và khóa ảo
Trong môi trường chuyên nghiệp, bạn không thể tùy tiện phát khóa API chính của mình cho mọi người. Để giải quyết vấn đề này, LiteLLM cho phép bạn tạo ra... khóa ảo cá nhân hóaĐây là những chìa khóa bạn cấp cho các nhà phát triển hoặc ứng dụng của mình, và điều tuyệt vời nhất là bạn có thể cấp chúng cho họ. giới hạn và hạn chế ngân sách truy cập vào các mô hình cụ thể.
Để chức năng theo dõi chi tiêu và quản lý người dùng này hoạt động, bạn cần có cơ sở dữ liệu. PostgreSQLGói Docker Compose tiêu chuẩn đã bao gồm một phiên bản Postgres lưu trữ nhật ký tiêu thụ và khóa. Nếu hệ thống triển khai của bạn phát triển, bạn cũng có thể tích hợp thêm Postgres. Redis để quản lý giới hạn tốc độ và bộ nhớ đệm, nhờ đó ngăn chặn ứng dụng sử dụng quá mức hạn mức API của bạn.
Tích hợp mã và sử dụng API
Sau khi máy chủ proxy hoạt động, bất kỳ thư viện nào hỗ trợ API của OpenAI đều sẽ hoạt động. Bạn chỉ cần thay đổi... base_url đến máy chủ LiteLLM của bạn. Nếu bạn đang sử dụng OpenAI Python SDK, chỉ cần trỏ đến cổng 4000 và sử dụng lệnh sau: khóa ảo được tạoĐiều này giúp quá trình chuyển đổi giữa các mô hình diễn ra liền mạch.
Dành cho những ai thích sử dụng curl hoặc các công cụ mạng, các yêu cầu được gửi dưới dạng POST tiêu chuẩn đến điểm cuối. /v1/chat/completionsĐiều quan trọng cần nhớ là, tùy thuộc vào cách bạn cấu hình mô hình, bạn có thể cần phải chỉ định... tiền tố nhà cung cấp (Ví dụ, groq/llama3) để máy chủ proxy biết chính xác nơi cần chuyển hướng yêu cầu.
Triển khai sản xuất và mở rộng quy mô
Khi bạn chuyển từ thử nghiệm cục bộ sang môi trường thực tế trên AWS, Azure hoặc Google CloudQuá trình triển khai thay đổi. Bạn có hai lựa chọn: chế độ nguyên khốitrong đó một hình ảnh duy nhất quản lý lưu lượng truy cập, API và giao diện người dùng, hoặc chế độ dịch vụ vi môTrong đó, cổng kết nối, hệ thống phụ trợ và giao diện được triển khai và mở rộng quy mô một cách độc lập.
Đối với Kubernetes, cách hiệu quả nhất là sử dụng Biểu đồ lái tàuĐiều này cho phép bạn cấu hình tự động mở rộng quy mô bằng HPA hoặc KEDA, dựa trên mức sử dụng CPU hoặc các chỉ số Prometheus. Trong môi trường điện toán đám mây, việc đặt một cấu hình như vậy được khuyến nghị mạnh mẽ. máy chủ proxy ngược như Nginx hoặc Caddy Đặt nó phía trước LiteLLM để xử lý mã hóa HTTPS, vì lưu lượng truy cập nội bộ của container thường được truyền dưới dạng văn bản thuần.
An toàn và các biện pháp tốt nhất
Để hệ thống hoạt động ổn định, khi triển khai LiteLLM với Docker, điều quan trọng là không được để lộ trực tiếp cổng 4000 ra internet. Lý tưởng nhất là nên liên kết cổng này với... 127.0.0.1 và để máy chủ proxy ngược xử lý việc truy cập. Hơn nữa, việc sử dụng quản lý bí mật Việc sử dụng các công cụ như AWS Secrets Manager hoặc Azure Key Vault sẽ tốt hơn so với việc ghi trực tiếp các khóa vào tệp .env trong môi trường sản xuất.
Một điểm quan trọng khác là quản lý việc di chuyển cơ sở dữ liệu. Trong các triển khai quy mô lớn, tốt nhất là nên chạy một quy trình cụ thể. việc làm di cư độc lập Trước khi khởi động các pod proxy, hãy đảm bảo rằng lược đồ PostgreSQL được cập nhật mà không làm tắc nghẽn lưu lượng yêu cầu AI.
Việc triển khai LiteLLM với Docker dễ dàng đến vậy. Công cụ này chuyển đổi sự phức tạp của việc quản lý nhiều nhà cung cấp AI thành một hoạt động tập trung và hiệu quả. Bằng cách trừu tượng hóa sự khác biệt giữa các API và bổ sung các lớp bảo mật và kiểm soát chi phí, nó cho phép bất kỳ tổ chức nào triển khai một cơ sở hạ tầng LLM có khả năng mở rộng, an toàn và trên hết là linh hoạt, có thể thích ứng với những thay đổi liên tục trong lĩnh vực công nghệ.
Mục lục
Biên tập viên chuyên về các vấn đề công nghệ và internet với hơn mười năm kinh nghiệm trong các lĩnh vực truyền thông kỹ thuật số khác nhau. Tôi đã từng làm biên tập viên và người sáng tạo nội dung cho các công ty thương mại điện tử, truyền thông, tiếp thị và quảng cáo trực tuyến. Tôi cũng đã viết trên các trang web kinh tế, tài chính và các lĩnh vực khác. Công việc của tôi cũng là niềm đam mê của tôi. Bây giờ, qua bài viết của tôi trong Tecnobits, Tôi cố gắng khám phá tất cả những tin tức và cơ hội mới mà thế giới công nghệ mang đến cho chúng ta hàng ngày để cải thiện cuộc sống của chúng ta.