- vừa được xem lúc

Nâng cao hiệu suất RAG của bạn với Tavily Search API

0 0 9

Người đăng: Minh Le

Theo Viblo Asia

Mở khóa kết quả nhanh hơn, phù hợp hơn

Giới thiệu

Các mô hình ngôn ngữ lớn (LLM) và hệ thống RAG đã chứng tỏ sự vượt trội của chúng theo thời gian. Chúng không chỉ cung cấp các cuộc trò chuyện hấp dẫn mang lại thông tin hữu ích mà còn mở ra những con đường mới cho các ứng dụng thông minh và cá nhân hóa, biến đổi mọi thứ từ dịch vụ khách hàng đến nghiên cứu khoa học.

Tuy nhiên, bất chấp những kỹ năng độc đáo và mạnh mẽ của chúng, có bằng chứng cho thấy chúng có thể tạo ra thông tin có vẻ hợp lý nhưng không chính xác, đặc biệt khi đối mặt với các câu hỏi không rõ ràng hoặc thiếu dữ liệu liên quan. Hơn nữa, chúng đã thể hiện sự thiếu cập nhật kiến thức, khiến chúng thỉnh thoảng đưa ra thông tin "cũ".

Để giảm thiểu những vấn đề này, khả năng kết nối với các nguồn đáng tin cậy và được cập nhật là rất quan trọng. Sử dụng một công cụ bổ sung để truy xuất kiến thức bên ngoài có thể giúp RAG và LLM truy cập thông tin cập nhật, giảm thiểu ảo giác và nâng cao độ chính xác về mặt sự thật.

image.png

Hãy tưởng tượng AI như một học sinh thông minh nhưng chưa có nhiều kinh nghiệm. Nó có thể hiểu và trả lời câu hỏi dựa trên những gì nó đã học, nhưng đôi khi nó vẫn cần sự trợ giúp để tìm kiếm thông tin mới và chính xác.

Tavily Search API phù hợp cho công việc đó. Nó là một công cụ tìm kiếm được thiết kế đặc biệt cho LLM và RAG, với mục tiêu cung cấp kết quả tìm kiếm hiệu quả, nhanh chóng và lâu dài. Tavily chuyên về việc cải thiện kết quả tìm kiếm cho các nhà phát triển AI và các tác nhân AI tự động. Hơn nữa, Tavily sử dụng các nguồn dữ liệu nội bộ riêng tư về tài chính, mã hóa, tin tức và các loại khác để bổ sung nội dung web. Kết quả là, Tavily cho phép các nhà phát triển xây dựng các ứng dụng AI chính xác, sâu sắc và có nhận thức về ngữ cảnh hơn.

Trong bài viết này, chúng ta sẽ nói về API Tìm kiếm Tavily, đi sâu vào các chức năng của nó và cách nó tận dụng AI để nâng cao tìm kiếm. Cấu trúc của bài viết như sau:

  • Hiểu sức mạnh của Tavily Search API: Tổng quan nhanh về API Tìm kiếm Tavily, bao gồm lý do tại sao nó quan trọng và cách nó hoạt động.
  • Mã trong hành động: Bắt đầu với một ví dụ mã cơ bản minh họa một truy vấn tìm kiếm đơn giản bằng Tavily.
  • Kết luận.

Hiểu sức mạnh của Tavily Search API

Tavily Search API là một công cụ tìm kiếm chuyên dụng được thiết kế để tăng tốc các ứng dụng AI. Không giống như các công cụ tìm kiếm truyền thống, Tavily được tối ưu hóa cho các Mô hình Ngôn ngữ Lớn (LLM) và các tác vụ Tạo Tái Tìm kiếm (RAG). Nó cung cấp kết quả tìm kiếm hiệu quả, nhanh chóng và bền vững, tập trung vào việc cung cấp thông tin liên quan nhất cho các nhà phát triển AI và các tác nhân AI tự động.

image.png

Tavily là một công cụ tìm kiếm được xây dựng từ đầu cho các mô hình AI. Các nhà phát triển Tavily hiểu những thách thức độc đáo mà các hệ thống LLM và RAG phải đối mặt, và họ đã thiết kế Tavily để trở thành giải pháp tối ưu. Với trọng tâm vào tốc độ, độ chính xác và tính liên quan, Tavily cung cấp kết quả tìm kiếm được cá nhân hóa cho các ứng dụng AI. Nền tảng xử lý khối lượng lớn công việc thu thập, lọc và trích xuất dữ liệu, cho phép chúng ta xây dựng các mô hình AI xuất sắc.

Các API tìm kiếm hiện tại như Google, Serp và Bing cung cấp kết quả không liên quan, yêu cầu các nhà phát triển phải lấy cào trang web, lọc thông tin không liên quan và tối ưu hóa nội dung cho các giới hạn ngữ cảnh của LLM, một tác vụ đòi hỏi kỹ năng. API Tìm kiếm Tavily áp dụng một cách tiếp cận thông minh hơn. Nó thực hiện công việc nặng nhọc cho chúng ta bằng cách:

  • Lọc nhiễu: Tavily tìm kiếm trên 20 trang web cùng một lúc, sau đó sử dụng AI thông minh để xác định thông tin liên quan nhất cho tác vụ hoặc truy vấn cụ thể của chúng ta.
  • Kiểm soát: Chúng ta có thể tinh chỉnh các tìm kiếm của mình với các trường tùy chỉnh như ngữ cảnh và giới hạn mã thông báo, đảm bảo AI của bạn nhận được dữ liệu hoàn hảo mà nó cần.
  • Làm cho AI của bạn thông minh hơn: Tavily thậm chí còn giúp AI của chúng ta đưa ra quyết định tốt hơn bằng cách đề xuất các tìm kiếm theo dõi và cung cấp các câu trả lời ngắn gọn để cải thiện giao tiếp giữa các tác nhân.

Triển khai code

Chúng ta sẽ lập trình thí nghiệm của mình bằng Python, do đó, chúng ta cần cài đặt SDK Python của Tavily thông qua dòng lệnh pip install tavily-python. Gói này đơn giản hóa tương tác với API Tavily, cho phép chúng ta sử dụng tất cả các tính năng tìm kiếm của họ trực tiếp từ các tập lệnh Python của mình.

Để truy cập công cụ, chúng ta truy cập bảng điều khiển Tavily và lấy khóa API.

image.png

Tavily cung cấp 3 cách đơn giản để tìm kiếm:

  • search: thực hiện truy vấn tìm kiếm Tavily và trả về phản hồi dưới dạng dict có cấu trúc tốt.
  • get_search_context: thực hiện truy vấn tìm kiếm Tavily và trả về chuỗi nội dung và nguồn trong giới hạn mã thông báo được cung cấp. Nó hữu ích để chỉ lấy nội dung liên quan từ các trang web đã truy xuất mà không phải xử lý việc trích xuất ngữ cảnh và quản lý mã thông báo.
  • qna_search: thực hiện tìm kiếm và trả về chuỗi chứa câu trả lời cho truy vấn gốc. Điều này tối ưu để được sử dụng như một công cụ cho các tác nhân AI.

Cùng nhau, việc triển khai mã sẽ là:

import os
from dotenv import load_dotenv
from tavily import TavilyClient load_dotenv()
TAVILY_API_KEY = os.getenv("TAVILY_API_KEY") # Bước 1. Khởi tạo TavilyClient của bạn
tavily_client = TavilyClient(api_key=TAVILY_API_KEY) # Bước 2.1. Thực thi truy vấn tìm kiếm đơn giản
response = tavily_client.search("Ai là Leo Messi?") # Bước 2.2. Thực thi truy vấn tìm kiếm ngữ cảnh
# answer = tavily_client.get_search_context(query="Ai là Leo Messi?") # Bước 2.3. Thực thi truy vấn tìm kiếm Q&A
# answer = tavily_client.qna_search(query="Ai là Leo Messi?") # Bước 3. Lấy kết quả!!!
print(result)

Kết luận

Trong quá trình khám phá API Tìm kiếm Tavily, chúng ta đã đi sâu vào các chức năng của nó, làm sáng tỏ cách nó tận dụng AI để nâng cao tìm kiếm. API Tìm kiếm Tavily nổi lên như một công cụ quan trọng cho các nhà phát triển đang tìm cách xây dựng các LLM và hệ thống RAG mạnh mẽ và đáng tin cậy hơn. Bằng cách cung cấp thông tin chính xác, có ngữ cảnh, Tavily giúp giảm thiểu các thách thức của ảo giác và kiến thức lỗi thời, mở đường cho các ứng dụng AI đáng tin cậy và sâu sắc hơn.

Khi AI tiếp tục phát triển và thâm nhập vào nhiều khía cạnh của cuộc sống của chúng ta, nhu cầu về các khả năng tìm kiếm đáng tin cậy và hiệu quả sẽ chỉ tăng lên. Tavily đóng vai trò quan trọng trong sự tiến hóa này, cho phép các nhà phát triển tạo ra các ứng dụng AI vừa thông minh vừa đáng tin cậy. Với trọng tâm vào độ chính xác, tốc độ và khả năng thích ứng, API Tìm kiếm Tavily là một thay đổi cuộc chơi đối với tương lai của tìm kiếm được hỗ trợ bởi AI và việc truy xuất thông tin.

Tham khảo

  1. Gao et al. - Retrieval-Augmented Generation for Large Language Models: A Survey - URL: https://arxiv.org/pdf/2312.10997v5

  2. IBM - What is retrieval-augmented generation? - URL: https://research.ibm.com/blog/retrieval-augmented-generation-RAG

  3. Chen et al. - On the Effectiveness of Large Language Models in Domain-Specific Code Generation - URL: https://arxiv.org/pdf/2312.01639v2

  4. Tavily Docs - Getting started - URL: https://docs.tavily.com/docs/tavily-api/introduction

Bình luận

Bài viết tương tự

- vừa được xem lúc

Các thuật toán cơ bản trong AI - Phân biệt Best First Search và Uniform Cost Search (UCS)

Nếu bạn từng đọc các thuật toán trong AI (Artificial Intelligence - Trí tuệ nhân tạo), rất có thể bạn từng nghe qua về các thuật toán tìm kiếm cơ bản: UCS (thuộc chiến lược tìm kiếm mù) và Best First Search (thuộc chiến lược tìm kiếm kinh nghiệm). Khác nhau rõ từ khâu phân loại rồi, thế nhưng hai th

0 0 169

- vừa được xem lúc

Con đường AI của tôi

Gần đây, khá nhiều bạn nhắn tin hỏi mình những câu hỏi đại loại như: có nên học AI, bắt đầu học AI như nào, làm sao tự học cho đúng, cho nhanh, học không bị nản, lộ trình học AI như nào... Sau nhiều lần trả lời, mình nghĩ rằng nên viết hẳn một bài để trả lời chi tiết hơn, cũng như để các bạn sau này

0 0 157

- vừa được xem lúc

[ChatterBot] Thư viện chatbot hay ho dành cho Python| phần 3

Trong bài trước mình đã trình bày về Training data cho chatbot và tiền xử lý dữ liệu. Trong phần này sẽ trình bày với các bạn về logic adapter.

0 0 62

- vừa được xem lúc

[Deep Learning] Kỹ thuật Dropout (Bỏ học) trong Deep Learning

. Trong bài viết này, mình xin phép giới thiệu về Dropout (Bỏ học) trong mạng Neural, sau đó là mình sẽ có 1 số đoạn code để xem Dropout ảnh hưởng thế nào đến hiệu suất của mạng Neural. 1.1. Dropout trong mạng Neural là gì.

0 0 69

- vừa được xem lúc

Kỹ thuật Dropout (Bỏ học) trong Deep Learning

Trong bài viết này, mình xin phép giới thiệu về Dropout (Bỏ học) trong mạng Neural, sau đó là mình sẽ có 1 số đoạn code để xem Dropout ảnh hưởng thế nào đến hiệu suất của mạng Neural. 1.

0 1 82

- vừa được xem lúc

Blockchain dưới con mắt làng Vũ Đại 4.0

Mở bài. Hey nhô các bạn, lại là mình đây .

0 0 51