Các dạng móc xích LangChain (phần 10)

Các xích tùy chỉnh: Tạo các xích chuyên biệt cho các nhiệm vụ cụ thể

Các xích tùy chỉnh trong LangChain cung cấp cho các nhà phát triển với tính linh động để tạo các giải pháp gắn đuôi
cho các nhiệm vụ hay dòng làm việc cụ thể. Bằng cách kết hợp các dạng xích hiện có, tích hợp logic tùy chỉnh, hay
thực thi toàn bộ các cấu trúc xích mới, các nhà phát triển có thể xử lí các yêu cầu độc nhất và tối ưu hóa các ứng
dụng AI ngôn ngữ của họ.
Các lợi thế then chốt của xích tùy chỉnh
+ Tối ưu hóa tùy theo nhiệm vụ: Thiết kế các xích cái khớp hoàn hảo vấn đề trong tay
+ Kiểm soát nâng cao: Tinh chỉnh mọi khía cạnh của hành vi của xích.
+ Hiệu quả được cải thiện: Tạo dòng các xử lí bằng cách loại trừ các bước không cần thiết.
+ Đổi mới: Thực thi cách tiếp cận tưởng tượng tới các nhiệm vụ AI ngôn ngữ.
Các bước tạo một xích tùy chỉnh
1. Nhận dạng các yêu cầu cụ thể của nhiệm vụ của bạn
2. Quyết định các dạng xích hay bộ phận hiện có nào có thể được sử dụng
3. Thiết kế cấu trúc và dòng của xích tùy chỉnh của bạn
4. Thực thi logic hay các chuyển dạng tùy chỉnh khi cần.
5. Tích hợp xích tùy chỉnh với các bộ phận LangChain khác
Ví dụ: Tạo một xích tùy chỉnh cho tạo sinh article với fast-checking.

from langchain.chains import LLMChain, SequentialChain
from langchain.llms import AzureOpenAI
from langchain.prompts import PromptTemplate
class ArticleGeneratorChain(SequentialChain):

def __init__(self, llm):

# Article generation chain
article_prompt = PromptTemplate(

input_variables=[“topic”],
template=”Write a short article about {topic}.”

)

article_chain = LLMChain(

llm=llm,
prompt=article_prompt,
output_key=”article”

)

# Fact-checking chain
fact_check_prompt = PromptTemplate(

input_variables=[“article”],
template=”Identify any factual claims in this article and rate their accuracy: {article}”

)

fact_check_chain = LLMChain(

llm=llm,
prompt=fact_check_prompt,
output_key=”fact_check”

)

# Revision chain
revision_prompt = PromptTemplate(

input_variables=[“article”, “fact_check”],
template=”Revise this article based on the fact-check results:
\n\n Article: {article}\n\nFact-check: {fact_check}\n\nRevised article:”

)

revision_chain = LLMChain(

llm=llm,
prompt=revision_prompt,
output_key=”revised_article”

)

# Initialize the sequential chain
super().__init__(

chains=[article_chain, fact_check_chain, revision_chain],
input_variables=[“topic”],
output_variables=[“article”, “fact_check”, “revised_article”]

)

# Usage
llm = AzureOpenAI(deployment_name=””, model_name=””)
article_generator = ArticleGeneratorChain(llm)
result = article_generator.invoke({“topic”: “Singularity will be achieved by 2025”})
print(“fact_check results”, result[‘fact_check’])
Output
fact_check results
Singularity will eventually surpass human intelligence.
1. The concept of Singularity refers to a hypothetical future event in which artificial intelligence will surpass human intelligence.
Rating: Mostly accurate. While the concept of Singularity is still hypothetical, it is a widely recognized concept in the scientific and technological community.
2. Singularity is also known as the technological singularity.
Rating: Accurate.
3. Many experts and futurists have predicted that Singularity will be achieved by the year 2025.
Rating: Inaccurate. While some experts have made predictions about when Singularity may occur, there is no consensus on a specific timeframe.

ArticleGeneratorChain tùy chỉnh này kết hợp nhiều LLMChains để tạo một dòng làm việc tinh vi cho tạo sinh các bài
viết với fast-checking và sửa lại tích hợp. Bằng cách tạo các xích tùy chỉnh, các nhà phát triển có thể xử lí các
nhiệm vụ nhiều bước phức tạp trong khi duy trì tính mô đun và linh động cái LangChain cung cấp.
Các xích tùy chỉnh làm các nhà phát triển có thể đẩy gianh giới của cái gì có thể với AI ngôn ngữ, tạo các giải pháp
đổi mới gắn theo các trường hợp sử dụng và yêu cầu cụ thể.

Chia sẻ