Khóa học
Nếu bạn muốn tích hợp một mô hình ngôn ngữ có giọng điệu tự nhiên và độ chính xác cao vào ứng dụng của mình, Claude 2 của Anthropic là lựa chọn tốt nhất. Sản phẩm đi kèm ứng dụng chat công khai (tương tự ChatGPT), API và playground cho nhiều phiên bản mô hình.
Tìm hiểu sự khác biệt giữa phản hồi của Claude và ChatGPT trong bài viết Claude vs. ChatGPT: Trợ lý AI nào tốt nhất cho nhà khoa học dữ liệu năm 2023?
Trong hướng dẫn này, chúng ta sẽ tìm hiểu về các mô hình Claude 2X và cách truy cập chúng bằng Python API. Chúng ta sẽ thiết lập API, thực hiện các truy vấn cơ bản và xử lý phản hồi. Chúng ta cũng sẽ tìm hiểu về truy vấn streaming, yêu cầu bất đồng bộ và một số chức năng nâng cao khác của API. Toàn bộ mã nguồn cho hướng dẫn này có trong sổ tay DataLab này; bạn có thể dễ dàng tạo một bản sao để chỉnh sửa và chạy mã ngay trên trình duyệt, không cần cài đặt gì trên máy tính.
Kết thúc bài, bạn sẽ nắm vững cách tích hợp Claude 2 vào ứng dụng của riêng mình để khai thác các khả năng ngôn ngữ tự nhiên nâng cao của nó.
Nếu bạn mới làm quen với generative AI, lộ trình kỹ năng AI Fundamentals sẽ giúp bạn học các công nghệ và mô hình mới để sẵn sàng cho thế giới AI của ngày mai.
Những điều cơ bản về Claude 2
Anthropic gần đây đã ra mắt Claude 2, phiên bản mới nhất của mô hình ngôn ngữ lớn của họ. Mô hình cho thấy hiệu năng cải thiện ở nhiều tác vụ với phản hồi dài hơn và mạch lạc hơn. Ngoài ra, nó đi kèm quyền truy cập API và trang web beta công khai tại claude.ai.

Hình ảnh từ claude.ai
Claude 2 nổi tiếng về hội thoại tự nhiên, với khả năng suy luận nâng cao, bộ nhớ mở rộng và theo dõi ngữ cảnh, đồng thời giảm thiểu đầu ra gây hại. Nó cho thấy cải thiện trong các khả năng như lập trình, suy luận toán học và logic.
Chẳng hạn, trong suy luận pháp lý, Claude 2 đạt 76,5% ở phần trắc nghiệm của kỳ thi Bar, cao hơn 3,5% so với Claude 1.3. Khi được đánh giá trên các bài kiểm tra học thuật, Claude 2 đạt trên phân vị thứ 90 ở các phần đọc và viết GRE, tương đương mức trung vị ở phần suy luận định lượng.
Giới thiệu Claude 2.1
Ngày 21 tháng 11 năm 2023, Anthropic phát hành Claude 2.1 với những cải thiện đáng kể giúp suy luận nâng cao hơn đồng thời giảm nội dung bịa đặt. Trọng tâm lớn là tăng độ tin cậy thông qua tính trung thực cao hơn. Claude 2.1 hiện minh bạch hơn về những khoảng trống trong cơ sở tri thức thay vì cố gắng bịa thông tin.
Bản phát hành này có cửa sổ ngữ cảnh lớn hơn 200K, cho phép Claude tham chiếu và đối chiếu các nội dung dài như bài báo nghiên cứu để duy trì tính chính xác thực tế trong các bản tóm tắt hay phân tích dài.
Claude 2.1 cũng giới thiệu tính năng dùng công cụ ở giai đoạn thử nghiệm. Tính năng này cho phép Claude 2 truy xuất và xử lý dữ liệu từ các nguồn bổ sung với độ chính xác cao trong khi gọi hàm và thực hiện hành động.
Thiết lập Claude 2
Quyền truy cập Anthropic API hiện bị giới hạn cho một nhóm cá nhân và tổ chức được chọn. Nếu muốn là một trong những người đầu tiên dùng thử, bạn có thể điền biểu mẫu đăng ký trên website. Anthropic đang cấp quyền truy cập dần để đảm bảo an toàn và khả năng mở rộng của API. Lưu ý do số lượng yêu cầu lớn, có thể sẽ mất thời gian để được cấp quyền.
Sau khi nhận email phê duyệt từ Anthropic và tạo tài khoản, bạn sẽ được chuyển đến bảng điều khiển. Bảng điều khiển có liên kết tới workbench, tương tự OpenAI Playground, nơi bạn có thể chuyển đổi giữa các mô hình và phân tích phản hồi. Ngoài ra còn có liên kết để tạo khóa API và tài liệu.

Hình ảnh từ Dashboard
Để tạo khóa API, bạn cần nhấp nút "Get API Keys" và nhập tên khóa. Sau khi hoàn tất, bạn sẽ nhận được một khóa để dùng tạo phản hồi qua Claude 2 API.

Hình ảnh từ Anthropic
Để thiết lập khóa API dưới dạng biến môi trường, bạn có thể dùng lệnh Bash hoặc thiết lập trong sổ tay DataLab. Trước hết, mở một sổ tay mới rồi vào nút "Environment" ở bảng bên trái. Nhấp dấu cộng và thêm tên cùng giá trị biến. Cuối cùng, nhấn lưu để áp dụng thay đổi.

Hình ảnh từ DataLab
Lưu ý: bạn có thể truyền khóa API trực tiếp trong hàm Python, nhưng điều này rất không khuyến khích vì lý do bảo mật.
Để truy cập Anthropic API trong Python, trước tiên bạn phải cài đặt Anthropic SDK for Python bằng PIP.
pip install anthropicTruy cập Claude 2 API
Phần này, chúng ta sẽ học cách truy cập Anthropic API để tạo phản hồi bằng mô hình Claude 2.1. Bạn có thể lập trình theo bằng cách tạo bản sao sổ tay này: Bắt đầu với Claude 2 và Claude 2 API.
Chúng ta sẽ nạp os để truy cập khóa API và thư viện anthropic để tạo pipeline hội thoại AI dùng khóa API.
from anthropic import Anthropic, HUMAN_PROMPT, AI_PROMPTimport osanthropic_api_key = os.environ["ANTHROPIC_API_KEY"]anthropic = Anthropic( api_key= anthropic_api_key,)“HUMAN_PROMPT” và “AI_PROMPT” thực chất là các chuỗi dùng để tạo cấu trúc prompt đúng cho pipeline sinh nội dung.

Bây giờ chúng ta sẽ tạo phản hồi bằng cách cung cấp phiên bản mô hình, độ dài token tối đa và prompt. Hãy đảm bảo prompt của bạn theo mẫu Claude 2X.
completion = anthropic.completions.create( model="claude-2.1", max_tokens_to_sample=350, prompt=f"{HUMAN_PROMPT} How do I learn Python in a week?{AI_PROMPT}",)print(completion.completion)Chúng ta đã nhận được kết quả rất tốt. Claude 2.1 cung cấp một kế hoạch chi tiết để học Python trong một tuần.

Anthropic hỗ trợ cả yêu cầu API đồng bộ và bất đồng bộ.
API đồng bộ thực thi các yêu cầu tuần tự, chặn cho đến khi nhận phản hồi trước khi gọi tiếp. Ngược lại, API bất đồng bộ cho phép nhiều yêu cầu đồng thời mà không chặn, xử lý phản hồi khi hoàn tất. Điều này giúp API bất đồng bộ hiệu quả và có khả năng mở rộng hơn so với đồng bộ.
Để gọi API ở chế độ bất đồng bộ, hãy nhập AsyncAnthropic thay vì Anthropic. Định nghĩa một hàm với cú pháp async và dùng await với mỗi lần gọi API.
from anthropic import AsyncAnthropicanthropic = AsyncAnthropic()async def main(): completion = await anthropic.completions.create( model="claude-2.1", max_tokens_to_sample=300, prompt=f"{HUMAN_PROMPT}How many moons does Jupiter have?{AI_PROMPT}", ) print(completion.completion)await main()Kết quả gần như chính xác. Một số nguồn nói 79, nhưng NASA cho biết Sao Mộc có 95 vệ tinh.
Lưu ý: Dùng asyncio.run(main()) thay vì await main() khi chạy mã trong tệp Python .py thay vì Jupyter Notebook.
LLM Streaming với Claude 2
Streaming đã trở thành kỹ thuật thiết yếu cho các mô hình ngôn ngữ lớn, mang lại nhiều lợi ích so với phương pháp xử lý truyền thống. Thay vì chờ toàn bộ phản hồi, streaming cho phép xử lý đầu ra ngay khi có. Cách tiếp cận này giảm độ trễ cảm nhận bằng cách trả về đầu ra của mô hình ngôn ngữ theo từng token, thay vì dồn một lần.
Để bật streaming, đặt tham số 'stream' thành `True` trong hàm completion.
anthropic = Anthropic()stream = anthropic.completions.create( prompt=f"{HUMAN_PROMPT}Could you please write a Python code to train a simple classification model?{AI_PROMPT}", max_tokens_to_sample=350, model="claude-2.1", stream=True,)for completion in stream: print(completion.completion, end="", flush=True)Có vẻ như chúng ta nhận phản hồi theo từng dòng nhanh hơn nhiều, như thể Claude 2.1 đang gõ ra.

Tương tự, chúng ta cũng có thể chạy streaming ở chế độ `async`. Lưu ý chúng ta chỉ cần thêm `await` trước hàm completion và `async` trước vòng lặp for.
anthropic = AsyncAnthropic()stream = await anthropic.completions.create( prompt=f"{HUMAN_PROMPT}Please write a blog post on Neural Networks and use Markdown format. Kindly make sure that you proofread your work for any spelling, grammar, or punctuation errors.{AI_PROMPT}", max_tokens_to_sample=350, model="claude-2.1", stream=True,)async for completion in stream: print(completion.completion, end="", flush=True)Mô hình generative AI của chúng ta đang làm tốt việc viết một bài blog chỉnh chu.

Hãy xem danh sách 7 công cụ Generative AI thiết yếu có thể giúp bạn xây dựng ứng dụng chatbot đầy đủ chức năng, nhận biết ngữ cảnh.
Tính năng nâng cao và tùy chỉnh
Anthropic API cung cấp một số tính năng nâng cao và tùy chọn cấu hình ngoài việc tạo phản hồi cơ bản:
- Xử lý lỗi: Các kiểu ngoại lệ cụ thể như APIConnectionError và APIStatusError cho phép xử lý sự cố kết nối và lỗi HTTP gọn gàng.
- Header mặc định: Header anthropic-version được gửi tự động để nhận diện client. Có thể tùy chỉnh bằng cách thay đổi đối số
default_headerstrong đối tượnganthropic. - Ghi log: Có thể bật log debug bằng cách đặt biến môi trường ANTHROPIC_LOG. Điều này hỗ trợ khắc phục sự cố.
- HTTP client: Client HTTPX dùng để gửi yêu cầu có thể cấu hình proxy, transport và các chức năng nâng cao khác.
- Quản lý tài nguyên: Bạn có thể đóng client thủ công bằng phương thức
.close()hoặc dùng context manager để tự động đóng khi thoát. - Kỹ thuật prompt: Tài liệu API cung cấp nhiều từ khóa để tối ưu đầu vào cho văn bản, tài liệu có cấu trúc, đoạn mã và kết quả RAG.
- Xác thực prompt: API thực hiện khử nhiễu và xác thực prompt cơ bản để đảm bảo tối ưu cho mô hình Claude 2.
Để tìm hiểu thêm về các chức năng nâng cao, tham khảo tài liệu Anthropic API.
Ứng dụng thực tế của Claude 2 API
Claude 2 API có nhiều ứng dụng thực tiễn trên nhiều ngành và lĩnh vực. Trong sáng tạo nội dung và viết quảng cáo, nó có thể hỗ trợ soạn thảo bài viết chất lượng cao, tài liệu marketing và sáng tác. Ngoài ra, trong:
- Dịch ngôn ngữ: bạn có thể xây dựng ứng dụng cung cấp dịch thời gian thực tận dụng khả năng đa ngôn ngữ nâng cao.
- Giáo dục: rất phù hợp cho học tập cá nhân hóa. Học viên có thể tận dụng để nắm nhanh các chủ đề phức tạp.
- Hỗ trợ khách hàng: cung cấp phản hồi nhận biết ngữ cảnh nâng cao, chính xác và tự nhiên hơn.
- Hỗ trợ lập trình: tạo đoạn mã, gỡ lỗi và giải thích khái niệm phức tạp để tăng tốc phát triển
- Nghệ thuật sáng tạo: hợp tác với nghệ sĩ để tạo nội dung như bản nhạc
- Pháp lý/tuân thủ: soạn thảo tài liệu, tóm tắt luật và đảm bảo tuân thủ quy định.
Kết luận
Python API cung cấp cách mạnh mẽ để truy cập các mô hình hội thoại AI tối tân của Anthropic. Chúng ta đã đi qua những điều cơ bản về thiết lập khóa truy cập, gọi API đồng bộ và bất đồng bộ, streaming phản hồi và một số tính năng nâng cao. Ngoài ra, chúng ta đã tìm hiểu các ứng dụng thực tế của Claude 2.
Mặc dù API vẫn giới hạn quyền truy cập, Anthropic đang dần mở rộng theo thời gian. Khi Claude 2 tiếp tục phát triển, Python API sẽ giúp nhà phát triển dễ dàng tích hợp các khả năng tiên tiến vào nhiều sản phẩm và dịch vụ.
Hy vọng phần giới thiệu về Claude 2 API này hữu ích với bạn! Hãy thoải mái thử nghiệm các ví dụ mã để trực tiếp thấy những kỹ năng ấn tượng của Claude 2. Đây là danh sách 5 dự án bạn có thể xây dựng với các mô hình Generative AI để truyền cảm hứng cho dự án tiếp theo của bạn với Claude 2.
Là một nhà khoa học dữ liệu được chứng nhận, tôi đam mê tận dụng công nghệ tiên tiến để tạo ra các ứng dụng học máy đổi mới. Với nền tảng vững chắc về nhận dạng giọng nói, phân tích và báo cáo dữ liệu, MLOps, AI hội thoại và NLP, tôi đã rèn giũa kỹ năng phát triển các hệ thống thông minh có thể tạo ra tác động thực sự. Bên cạnh chuyên môn kỹ thuật, tôi cũng là một người truyền đạt tốt, có khả năng chắt lọc các khái niệm phức tạp thành ngôn ngữ rõ ràng, súc tích. Nhờ đó, tôi trở thành một blogger được nhiều người quan tâm trong lĩnh vực khoa học dữ liệu, chia sẻ góc nhìn và kinh nghiệm với cộng đồng các chuyên gia dữ liệu ngày càng lớn. Hiện tại, tôi tập trung vào sáng tạo và biên tập nội dung, làm việc với các mô hình ngôn ngữ lớn để phát triển nội dung mạnh mẽ và hấp dẫn, giúp doanh nghiệp và cá nhân tận dụng tối đa dữ liệu của mình.

