Các LLM như GPT, Claude và LLaMA đang cách mạng hóa chatbot, việc tạo nội dung và nhiều ứng dụng khác. API đóng vai trò như những cầu nối thiết yếu, cho phép tích hợp mượt mà các khả năng hiểu và tạo ngôn ngữ phức tạp vào các dự án

Xây dựng một ứng dụng Python đơn giản sử dụng API GPT của OpenAI, sau đó triển khai thành điểm cuối REST bằng framework FastAPI.

from typing import Union

from fastapi import FastAPI

app = FastAPI()

@app.get("/")
def read_root():
    return {"Hello": "World"}

@app.get("/items/{item_id}")
def read_item(item_id: int, q: Union[str, None] = None):
    return {"item_id": item_id, "q": q}

Tạo một máy chủ web đơn giản bằng FastAPI. Máy chủ phản hồi hai loại yêu cầu web: một loại chỉ chào người dùng bằng "Hello World" khi họ truy cập trang chủ ("/") và loại còn lại hiển thị ID của mục và tham số truy vấn tùy chọn "q" khi người dùng truy cập trang mục cụ thể ("/items/{item_id}"). ID mục là bắt buộc và phải là số nguyên, trong khi tham số truy vấn "q" là tùy chọn và có thể là chuỗi hoặc không.

!uvicorn main:app --reload

image.png

Build End-to-End application in Python

Xây dựng các điểm cuối REST API cho các ứng dụng LLM của mình. Tạo một ứng dụng Python đơn giản (chỉ một hàm) sử dụng OpenAI GPT-4 API và dịch văn bản tiếng Anh sang tiếng Pháp. Ứng dụng này chỉ có một hàm là translate_text:

from openai import OpenAI

client = OpenAI(api_key="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")

models = client.models.list()
print([model.id for model in models.data])

image.png

Đây là tất cả các mô hình mà có thể truy cập.

from openai import OpenAI
import os

os.environ["OPENAI_API_KEY"] = "___"
# Initialize OpenAI client with your API key
client = OpenAI()

def translate_text(input_str):
    completion = client.chat.completions.create(
        model="gpt-4o",
        messages=[
            {
                "role": "system",
                "content": "You are an expert translator who translates text from english to french and only return translated text",
            },
            {"role": "user", "content": input_str},
        ],
    )

    return completion.choices[0].message.content

Import thư viện

Đặt API Key vào biến môi trường

Nếu mà đã có Openai API KEY mà mô hình vẫn chạy không được thì do bạn chưa trả phí.

Khởi tạo OpenAI client