Bỏ qua đến nội dung chính

Accessing the API

📖 Nội dung bài học

Video này đang được xử lý. Vui lòng quay lại sau và tải lại trang.

Tóm tắt

Khi xây dựng ứng dụng với Claude, việc hiểu rõ vòng đời của một yêu cầu (request lifecycle) giúp bạn đưa ra các quyết định kiến trúc tốt hơn và gỡ lỗi (debug) hiệu quả hơn. Hãy cùng tìm hiểu những gì diễn ra từ lúc người dùng nhấn "gửi" trên giao diện chat cho đến khi phản hồi của Claude xuất hiện trên màn hình.

Quy trình yêu cầu 5 bước

Mọi tương tác với Claude đều tuân theo một mô hình dự đoán được với năm giai đoạn riêng biệt: gửi yêu cầu đến server, yêu cầu đến Anthropic API, model xử lý, phản hồi về server, và phản hồi về client.

Tại sao bạn cần một Server

Bạn tuyệt đối không nên gọi trực tiếp đến Anthropic API từ mã nguồn phía client (client-side code). Đây là lý do:

  • Các yêu cầu API cần một API key bí mật để xác thực.
  • Việc để lộ key này trong mã nguồn client tạo ra một lỗ hổng bảo mật nghiêm trọng.
  • Bất kỳ ai cũng có thể lấy được key và thực hiện các yêu cầu trái phép.

Thay vào đó, ứng dụng web hoặc di động của bạn sẽ gửi yêu cầu đến server riêng của bạn, sau đó server này mới giao tiếp với Anthropic API bằng key được lưu trữ bảo mật.

Thực hiện yêu cầu API

Khi server của bạn liên lạc với Anthropic API, bạn có thể sử dụng SDK chính thức hoặc thực hiện các yêu cầu HTTP thông thường. Anthropic cung cấp SDK cho Python, TypeScript, JavaScript, Go và Ruby.

Mỗi yêu cầu phải bao gồm các trường thiết yếu sau:

  • API Key - Xác định yêu cầu của bạn với Anthropic.
  • Model - Tên của model muốn sử dụng (ví dụ: "claude-3-sonnet").
  • Messages - Danh sách chứa văn bản đầu vào của người dùng.
  • Max Tokens - Giới hạn số lượng token tối đa mà Claude có thể tạo ra.

Bên trong quá trình xử lý của Claude

Khi Anthropic nhận được yêu cầu, Claude sẽ xử lý qua bốn giai đoạn chính: tokenization, embedding, contextualization và generation.

Tokenization

Đầu tiên, Claude chia văn bản đầu vào thành các mảnh nhỏ gọi là token. Chúng có thể là cả từ, một phần của từ, khoảng trắng hoặc ký hiệu. Để đơn giản, hãy coi mỗi từ là một token.

Embedding

Mỗi token được chuyển đổi thành một embedding - một danh sách dài các con số đại diện cho tất cả các ý nghĩa có thể có của từ đó. Hãy coi embedding như những định nghĩa bằng số giúp nắm bắt các mối quan hệ về ngữ nghĩa (semantic relationships).

Một từ thường có nhiều nghĩa. Ví dụ, từ "quantum" có thể ám chỉ:

  • Một đơn vị rời rạc của một đại lượng vật lý (vật lý).
  • Các khái niệm cơ học lượng tử hoặc vật lý lượng tử.
  • Thứ gì đó cực kỳ nhỏ hoặc dưới mức nguyên tử.
  • Các ứng dụng điện toán lượng tử.

Contextualization (Ngữ cảnh hóa)

Claude tinh chỉnh từng embedding dựa trên các từ xung quanh để xác định ý nghĩa phù hợp nhất trong ngữ cảnh. Quá trình này điều chỉnh các biểu diễn số để làm nổi bật định nghĩa chính xác.

Generation (Tạo nội dung)

Các embedding đã được ngữ cảnh hóa đi qua một lớp đầu ra để tính toán xác suất cho mỗi từ tiếp theo có thể xảy ra. Claude không phải lúc nào cũng chọn từ có xác suất cao nhất - nó sử dụng sự kết hợp giữa xác suất và tính ngẫu nhiên có kiểm soát để tạo ra các phản hồi tự nhiên và đa dạng.

Sau khi chọn xong mỗi từ, Claude thêm nó vào chuỗi và lặp lại toàn bộ quá trình cho từ tiếp theo.

Khi nào Claude dừng tạo nội dung

Sau mỗi token, Claude kiểm tra một vài điều kiện để quyết định có tiếp tục hay không:

  • Đạt giới hạn Max tokens - Đã chạm đến giới hạn bạn đã chỉ định chưa?
  • Kết thúc tự nhiên (Natural ending) - Nó đã tạo ra token kết thúc chuỗi (end-of-sequence token) chưa?
  • Chuỗi dừng (Stop sequence) - Nó có gặp phải một cụm từ dừng đã được định nghĩa trước không?

Phản hồi từ API

Khi quá trình tạo nội dung hoàn tất, API gửi lại một phản hồi có cấu trúc bao gồm:

  • Message - Văn bản đã được tạo.
  • Usage - Số lượng token đầu vào (input) và đầu ra (output).
  • Stop Reason - Lý do tại sao quá trình tạo nội dung kết thúc.

Server của bạn nhận phản hồi này và chuyển tiếp văn bản đã tạo về ứng dụng client, nơi nó xuất hiện trên giao diện người dùng.

Những điểm chính cần lưu ý

Hiểu được quy trình này giúp bạn:

  • Thiết kế kiến trúc bảo mật để bảo vệ API key.
  • Thiết lập giới hạn token phù hợp cho từng trường hợp sử dụng.
  • Xử lý các lý do dừng (stop reasons) khác nhau trong logic ứng dụng.
  • Gỡ lỗi bằng cách hiểu rõ vấn đề có thể phát sinh ở đâu trong quy trình.

Đừng quá lo lắng về việc phải ghi nhớ mọi chi tiết - mục tiêu là giúp bạn làm quen với các thuật ngữ và quy trình tổng thể mà bạn sẽ gặp khi làm việc với Claude API.

🔁 Bài học liên quan

📚 Nguồn & ghi nhận

Bài học có hữu ích không?

Góp ý / Báo lỗiPhát hiện sai sót hoặc có ý tưởng cải thiện?