LangChain เป็นเฟรมเวิร์กที่มีแอปพลิเคชันในการประมวลผลภาษาธรรมชาติหรือโดเมน NLP เพื่อสร้างแบบจำลองในภาษาที่เหมือนมนุษย์ มนุษย์สามารถใช้โมเดลเหล่านี้เพื่อหาคำตอบจากโมเดลหรือสนทนาได้เหมือนกับมนุษย์คนอื่นๆ LangChain ใช้เพื่อสร้าง chains โดยจัดเก็บแต่ละประโยคในการสนทนาและโต้ตอบเพิ่มเติมโดยใช้เป็นบริบท
โพสต์นี้จะแสดงกระบวนการสร้าง LLM และ LLMChain ใน LangChain
จะสร้าง LLM และ LLMChain ใน LangChain ได้อย่างไร?
หากต้องการสร้าง LLM และ LLMChain ใน LangChain เพียงทำตามขั้นตอนที่ระบุไว้:
ขั้นตอนที่ 1: ติดตั้งโมดูล
ขั้นแรก ติดตั้งโมดูล LangChain เพื่อใช้ไลบรารีสำหรับการสร้าง LLM และ LLMChain:
pip ติดตั้ง langchain
โมดูลอื่นที่จำเป็นในการสร้าง LLM คือ OpenAI และสามารถติดตั้งได้โดยใช้คำสั่ง pip:
pip ติดตั้ง openai
ขั้นตอนที่ 2: ตั้งค่าสภาพแวดล้อม
ตั้งค่าสภาพแวดล้อมโดยใช้คีย์ OpenAI API จากสภาพแวดล้อม:
นำเข้าเรานำเข้า getpassos.environ['OPENAI_API_KEY'] = getpass.getpass('คีย์ OpenAI API:')
ตัวอย่างที่ 1: สร้าง LLM โดยใช้ LangChain
ตัวอย่างแรกคือการสร้างโมเดลภาษาขนาดใหญ่โดยใช้ LangChain โดยการนำเข้าไลบรารี OpenAI และ ChatOpenAI และฟังก์ชัน use llm()
ขั้นตอนที่ 1: การใช้โมเดลการแชท LLM
นำเข้าโมดูล OpenAI และ ChatOpenAI เพื่อสร้าง LLM อย่างง่ายโดยใช้สภาพแวดล้อม OpenAI จาก LangChain:
จาก langchain.chat_models นำเข้า ChatOpenAIจาก langchain.llms นำเข้า OpenAI
llm = OpenAI()
chat_model = ChatOpenAI()
llm.predict('สวัสดี!')
โมเดลตอบกลับด้วยคำตอบ 'สวัสดี' ดังที่แสดงในภาพหน้าจอต่อไปนี้:
ฟังก์ชันการคาดการณ์() จาก chat_model ใช้เพื่อรับคำตอบหรือตอบกลับจากโมเดล:
chat_model.predict('สวัสดี!')ผลลัพธ์จะแสดงว่าโมเดลอยู่ในการกำจัดของผู้ใช้ที่ถามคำถาม:
ขั้นตอนที่ 2: การใช้แบบสอบถามข้อความ
ผู้ใช้ยังสามารถรับคำตอบจากแบบจำลองโดยให้ประโยคที่สมบูรณ์ในตัวแปรข้อความ:
text = 'บริษัทที่ผลิตถุงเท้าหลากสีสันควรตั้งชื่อบริษัทอะไรดี'llm.ทำนาย(ข้อความ)
โมเดลได้แสดงการผสมสีหลายสีสำหรับถุงเท้าสีสันสดใส:
รับคำตอบโดยละเอียดจากแบบจำลองโดยใช้ฟังก์ชันทำนาย () พร้อมการผสมสีสำหรับถุงเท้า:
chat_model.predict (ข้อความ)
ขั้นตอนที่ 3: การใช้ข้อความกับเนื้อหา
ผู้ใช้สามารถรับคำตอบพร้อมคำอธิบายเล็กน้อยเกี่ยวกับคำตอบ:
จาก langchain.schema นำเข้า HumanMessagetext = 'บริษัทที่ผลิตเสื้อผ้าสีสันสดใสจะตั้งชื่ออะไรดี'
ข้อความ = [HumanMessage(เนื้อหา=ข้อความ)]
llm.predict_messages(ข้อความ)
โมเดลนี้ได้สร้างชื่อให้กับบริษัทซึ่งก็คือ “Creative Clothing Co”:
ทำนายข้อความเพื่อรับคำตอบชื่อบริษัทพร้อมคำอธิบายด้วย:
chat_model.predict_messages (ข้อความ)
ตัวอย่างที่ 2: สร้าง LLMChain โดยใช้ LangChain
ตัวอย่างที่สองของคำแนะนำของเราสร้าง LLMChain เพื่อรับโมเดลในรูปแบบของการโต้ตอบของมนุษย์เพื่อรวมขั้นตอนทั้งหมดจากตัวอย่างก่อนหน้า:
จาก langchain.chat_models นำเข้า ChatOpenAIจาก langchain.prompts.chat นำเข้า ChatPromptTemplate
จาก langchain.prompts.chat นำเข้า ChatPromptTemplate
จาก langchain.prompts.chat นำเข้า SystemMessagePromptTemplate จาก langchain.prompts.chat นำเข้า HumanMessagePromptTemplate
จาก langchain.chains นำเข้า LLMChain
จาก langchain.schema นำเข้า BaseOutputParserclass CommaSeparatedListOutputParser(BaseOutputParser):
def แยกวิเคราะห์ (ตนเอง ข้อความ: str):
กลับ text.strip().split(', ')
สร้างเทมเพลตสำหรับโมเดลแชทโดยให้คำอธิบายโดยละเอียดเกี่ยวกับการทำงาน จากนั้นสร้างฟังก์ชัน LLMChain() ที่มี LLM, ตัวแยกวิเคราะห์เอาต์พุต และไลบรารี chat_prompt:
template = '''คุณต้องช่วยในการสร้างรายการที่คั่นด้วยเครื่องหมายจุลภาครับหมวดหมู่จากผู้ใช้ และสร้างรายการที่คั่นด้วยเครื่องหมายจุลภาคด้วยวัตถุ 5 ชิ้น
สิ่งเดียวที่ควรเป็นวัตถุจากหมวดหมู่'''
system_message_prompt = SystemMessagePromptTemplate.from_template(เทมเพลต)
human_template = '{ข้อความ}'
human_message_prompt = HumanMessagePromptTemplate.from_template(human_template)
#Configure LLMChain ด้วยโครงสร้างของแบบสอบถาม
chat_prompt = ChatPromptTemplate.from_messages([system_message_prompt, human_message_prompt])
เชน = LLMChain(
llm=ChatOpenAI(),
prompt=chat_prompt,
output_parser=จุลภาคSeparatedListOutputParser()
)
chain.run('สี')
แบบจำลองได้ให้คำตอบพร้อมรายการสี เนื่องจากหมวดหมู่ควรมีวัตถุ 5 ชิ้นที่ระบุในพรอมต์เท่านั้น:
นั่นคือทั้งหมดที่เกี่ยวกับการสร้าง LLM และ LLMChain ใน LangChain
บทสรุป
หากต้องการสร้าง LLM และ LLMChain โดยใช้ LangChain เพียงติดตั้งโมดูล LangChain และ OpenAI เพื่อตั้งค่าสภาพแวดล้อมโดยใช้คีย์ API หลังจากนั้น สร้างโมเดล LLM โดยใช้ chat_model หลังจากสร้างเทมเพลตพร้อมต์สำหรับการสืบค้นเดียวในการแชทที่สมบูรณ์ LLMChain ใช้เพื่อสร้างห่วงโซ่ของการสังเกตทั้งหมดในการสนทนาและใช้เป็นบริบทของการโต้ตอบ โพสต์นี้อธิบายกระบวนการสร้าง LLM และ LLMChain โดยใช้เฟรมเวิร์ก LangChain