Khóa học
Anthropic vừa ra mắt Claude 3.5 Sonnet, một mô hình mạnh mẽ vượt trội hơn GPT-4o và Gemini Pro 1.5 trên nhiều bảng đánh giá.
Khả năng suy luận thị giác của Claude 3.5 Sonnet đặc biệt ấn tượng, và bạn có thể muốn tích hợp chúng vào quy trình phát triển của mình thông qua API của Claude 3.5 Sonnet.
Trong bài viết này, tôi sẽ giúp bạn bắt đầu với API của Claude 3.5 Sonnet và cung cấp hướng dẫn từng bước để sử dụng Claude 3.5 Sonnet thông qua API của Anthropic.
Nếu bạn muốn có cái nhìn tổng quan về Claude 3.5 Sonnet, tôi đề xuất bài viết Claude 3.5 Sonnet là gì.
Claude 3.5 Sonnet là gì?
Claude 3.5 Sonnet là một mô hình ngôn ngữ lớn do Anthropic phát triển. Đây là một phần của dòng Claude 3.5 lớn hơn—Anthropic sẽ ra mắt Claude 3.5 Opus và Claude 3.5 Haiku vào cuối năm nay.
Claude 3.5 Sonnet thể hiện những cải tiến đáng kể trong việc hiểu và tạo ảnh, đồng thời cho thấy hiệu năng mạnh mẽ trên các bảng đánh giá, đặc biệt ở các tác vụ lập trình và suy luận, so với các mô hình khác như GPT-4o, Gemini 1.5 Pro hoặc Llama-400b.

Ngoài ra, mô hình còn giới thiệu một tính năng mới gọi là Artifacts nhằm nâng cao khả năng quản lý thông tin trong hội thoại. Bạn có thể tìm hiểu thêm về Artifacts trong bài viết giới thiệu về Claude Sonnet 3.5.
API Claude 3.5 Sonnet: Cách kết nối với API của Antrophic
Để bắt đầu sử dụng API Claude 3.5 Sonnet, bạn cần đăng ký tài khoản API Anthropic và thiết lập client của Anthropic. Hãy làm theo từng bước.
Nhận quyền truy cập API
Bước 1: Đăng ký
Truy cập Anthropic Console và tạo tài khoản. Bạn sẽ cần cung cấp thông tin cơ bản và xác minh email.
Bước 2: Khóa API
Sau khi thiết lập tài khoản, điều hướng đến mục Get API keys và nhấp Create Key để tạo khóa API của bạn.
Thiết lập môi trường của bạn
Để khởi tạo client của Anthropic, trước tiên bạn cần cài đặt thư viện anthropic như sau:
pip install anthropic
Sau khi cài đặt thư viện, bạn có thể khởi tạo client của Anthropic bằng khóa API của mình.
import anthropic
# Create an instance of the Anthropics API client
client = anthropic.Anthropic(api_key='your_api_key_here')
Khi đã cài thư viện anthropic và khởi tạo client Anthropic với API của bạn, hãy bắt đầu khám phá các khả năng của Claude 3.5 Sonnet.
Claude API: Messages API so với Text Completions API
API của Claude 3.5 Sonnet cung cấp nhiều tính năng mạnh mẽ, đặc biệt là Messages API, được thiết kế để tạo ra các tương tác phong phú và linh hoạt.
Lưu ý rằng Text Completions API hiện được xem là kế thừa. Mặc dù cung cấp chức năng hoàn thành văn bản cơ bản, nó thiếu các tính năng nâng cao và tính linh hoạt của Messages API.
Người dùng được khuyến khích chuyển sang Messages API để có chức năng nâng cao và được hỗ trợ lâu dài.
Ngoài ra, hiện tại, Artifacts chưa thể truy cập qua API. Để tương tác với Artifacts, bạn cần sử dụng giao diện web của Claude.ai, nơi hỗ trợ đầy đủ việc chỉnh sửa, tham chiếu và tải xuống nội dung do Claude 3.5 Sonnet tạo ra.
API Claude 3.5 Sonnet: Messages API
Messages API cho phép bạn gửi danh sách có cấu trúc các thông điệp đầu vào với nội dung văn bản hoặc hình ảnh, để mô hình tạo ra thông điệp tiếp theo trong cuộc hội thoại.
API này hỗ trợ cả truy vấn đơn lẻ và hội thoại nhiều lượt ở chế độ không trạng thái.
Để tạo một thông điệp, bạn có thể dùng thư viện Python anthropic và gọi phương thức messages.create với các tham số cần thiết. Các tham số chính gồm mô hình, danh sách thông điệp, cùng nhiều thiết lập tùy chọn để kiểm soát đầu ra.
Tham số bắt buộc
Hãy xem các tham số bắt buộc:
model: Mô hình sử dụng (ví dụ: "claude-3-5-sonnet-20240620").
messages: Danh sách thông điệp đầu vào. Mỗi thông điệp phải có vai trò ("user" hoặc "assistant") và nội dung.
Tại thời điểm viết bài này, đây là các mô hình có sẵn qua API của Anthropic:

Tham số tùy chọn
Các tham số tùy chọn bao gồm:
max_tokens: Số lượng token tối đa sẽ tạo ra.temperature: Điều chỉnh mức độ ngẫu nhiên của phản hồi.stop_sequences: Các chuỗi văn bản tùy chỉnh khiến mô hình dừng tạo nội dung.stream: Có truyền phát phản hồi dần dần hay không.system:Lời nhắc hệ thống cung cấp ngữ cảnh và hướng dẫn.tools: Định nghĩa các công cụ mà mô hình có thể sử dụng.top_k: Chỉ lấy mẫu từ K phương án hàng đầu cho mỗi token tiếp theo. Dùng để loại bỏ các phản hồi xác suất thấp ở "đuôi dài".top_p: Dùng nucleus sampling để cắt bỏ những phương án kém khả dĩ dựa trên xác suất tích lũy đạt ngưỡng chỉ định.
API Claude 3.5 Sonnet: Trường hợp sử dụng
Giờ đây chúng ta đã hiểu các tham số liên quan, hãy khám phá các trường hợp sử dụng thực tế của Messages API bằng Python và thư viện anthropic:
Yêu cầu một thông điệp đơn
Cách thực hiện một yêu cầu thông điệp đơn như sau:
response = client.messages.create(
model="claude-3-5-sonnet-20240620",
max_tokens=1024,
messages=[{"role": "user", "content": "Hello, world"}]
)
Hội thoại nhiều lượt
Giờ hãy khởi tạo một hội thoại nhiều lượt:
response = client.messages.create(
model="claude-3-5-sonnet-20240620",
max_tokens=512,
messages=[
{"role": "user", "content": "Hello there."},
{"role": "assistant", "content": "Hi, I'm Claude. How can I help you?"},
{"role": "user", "content": "Can you explain LLMs in plain English?"}
]
)
Bao gồm nội dung hình ảnh
Bắt đầu từ dòng Claude 3, bạn có thể đưa nội dung hình ảnh vào thông điệp.
response = client.messages.create(
model="claude-3-5-sonnet-20240620",
max_tokens=512,
messages=[
{
"role": "user",
"content": [
{
"type": "image",
"source": {
"type": "base64",
"media_type": "image/jpeg",
"data": "media_file"
}
},
{
"type": "text",
"text": "What is in this image?"
}
]
}
]
)
Sử dụng system prompt và stop sequence
Cách sử dụng system prompt và stop sequence như sau:
response = client.messages.create(
model="claude-3-5-sonnet-20240620",
max_tokens=1024,
messages=[{"role": "user", "content": "Write a short story."}],
system="You are a creative writing assistant.",
stop_sequences=["The end."],
temperature=0.9
)
Định nghĩa công cụ
Bạn có thể định nghĩa các công cụ để mô hình sử dụng trong quá trình tương tác. Điều này bao gồm chỉ định tên, mô tả và sơ đồ đầu vào của công cụ.
# Define the request parameters
model = "claude-3-5-sonnet-20240620"
messages = [{"role": "user", "content": "What's the S&P 500 at today?"}]
tools = [
{
"name": "get_stock_price",
"description": "Get the current stock price for a given ticker symbol.",
"input_schema": {
"type": "object",
"properties": {
"ticker": {
"type": "string",
"description": "The stock ticker symbol, e.g., AAPL for Apple Inc."
}
},
"required": ["ticker"]
}
}
]
# Create a message with the defined parameters
response = client.messages.create(
model=model,
messages=messages,
tools=tools
)
Kết luận
Trong hướng dẫn này, chúng ta đã tìm hiểu cách kết nối với API của Anthropic để sử dụng mô hình Claude 3.5 Sonnet. Chúng ta đã đề cập các khía cạnh quan trọng như thiết lập, xác thực và sử dụng Messages API cho nhiều tác vụ khác nhau.
Dù bạn đang xây dựng chatbot, trình tạo nội dung hay bất kỳ ứng dụng AI nào khác, Claude 3.5 Sonnet có thể là một lựa chọn phù hợp.
Để tìm hiểu thêm về Claude Sonnet và cách nó so sánh với ChatGPT, hãy xem các bài viết dưới đây:
FAQs
Những khác biệt chính giữa Text Completions API (kế thừa) và Messages API (mới hơn) trong API của Anthropic là gì?
Text Completions API cung cấp chức năng hoàn thành văn bản cơ bản, trong khi Messages API mang đến các tính năng nâng cao hơn, như khả năng tổ chức hội thoại nhiều lượt, tích hợp hình ảnh, và sử dụng system prompt cùng công cụ. Messages API được thiết kế cho các tương tác giàu tính tương tác và linh hoạt hơn, còn Text Completions API là công cụ đơn giản cho việc tạo văn bản cơ bản. Anthropic khuyến nghị sử dụng Messages API cho các dự án mới và chuyển các dự án hiện có từ Text Completions API sang.
Tôi có thể sử dụng Artifacts trực tiếp thông qua API Claude 3.5 Sonnet không?
Hiện tại, Artifacts chưa thể truy cập trực tiếp qua API. Bạn có thể tương tác với Artifacts thông qua giao diện web trên Claude.ai, nơi hỗ trợ chỉnh sửa, tham chiếu và tải xuống nội dung do Claude tạo ra. Tuy nhiên, Anthropic có thể bổ sung hỗ trợ API cho Artifacts trong tương lai.
Ryan là trưởng nhóm khoa học dữ liệu, chuyên xây dựng các ứng dụng AI sử dụng LLM. Anh là nghiên cứu sinh Tiến sĩ về Xử lý Ngôn ngữ Tự nhiên và Đồ thị Tri thức tại Imperial College London, nơi anh cũng hoàn thành bằng Thạc sĩ Khoa học Máy tính. Ngoài lĩnh vực khoa học dữ liệu, anh viết bản tin Substack hàng tuần, The Limitless Playbook, nơi anh chia sẻ một ý tưởng có thể áp dụng ngay từ các tư tưởng gia hàng đầu thế giới và đôi khi viết về những khái niệm cốt lõi của AI.


