از مزایای LangChain می توان به کدهای تمیز و ساده و امکان تعویض مدل ها با حداقل تغییرات اشاره کرد. بیایید LangChain را با مدل زبان بزرگ PalM 2 امتحان کنیم.
مدلهای زبان بزرگ (LLM) برای تبدیل شدن به بخشی جدایی ناپذیر از پشته نرمافزار پدید آمدهاند. آنها از طریق APIهای ارائه دهندگانی مانند Cohere، Google Cloud و OpenAI a> یا به عنوان مدل های منبع باز میزبانی شده در صورت در آغوش گرفته.
با این حال، استفاده از LLM ها صرفاً در مورد ارسال درخواست نیست. توسعه دهندگان باید جنبه هایی مانند تنظیمات پارامتر، افزایش سریع و تعدیل پاسخ را در نظر بگیرند. LLM ها بدون حالت هستند، بنابراین توسعه دهندگان باید تاریخچه مکالمه را برای زمینه حفظ کنند، احتمالاً از پایگاه داده برای ذخیره سازی طولانی مدت استفاده کنند.
علاوه بر این، راه حل جهانی LLM وجود ندارد. برنامه ها ممکن است به مدل های تخصصی مختلفی نیاز داشته باشند که یکپارچه سازی را پیچیده و پیچیدگی توسعه را افزایش می دهد.
LangChain در حال تبدیل شدن به ابزار منتخب برای توسعه دهندگانی است که برنامه های کاربردی درجه تولید را با استفاده از LLM ایجاد می کنند. دارای یک اکوسیستم متنوع و پر جنب و جوش است که ارائه دهندگان مختلف را زیر یک سقف قرار می دهد، از جمله مدل زبان بزرگ PaLM2 Google.< /p>
در این آموزش، مراحل ساخت یک برنامه LangChain با پشتیبانی از مدل Google PalM 2 را طی می کنیم.
تنظیم محیط
از Google MakerSuite دیدن کنید و یک کلید API برای PalM ایجاد کنید.
در ترمینال، یک محیط مجازی پایتون ایجاد کنید و آن را فعال کنید.
python -m venv venv source venv/bin/activate
یک متغیر محیطی برای ذخیره کلید PalM API ایجاد کنید.
export GOOGLE_API_KEY=YOUR_API_KEY
ماژول های پایتون زیر را نصب کنید.
pip install google-generativeai pip install langchain pip install pypdf pip install jupyter
دسترسی به API PalM
یک Jupyter Notebook جدید (در ایستگاه کاری محلی خود یا در Google Colab) راه اندازی کنید و کد زیر را اجرا کنید.
import google.generativeai as palm import os google_api_key=os.getenv('GOOGLE_API_KEY') palm.configure(api_key=google_api_key) prompt = 'Explain the difference between effective and affective with examples' completion = palm.generate_text( model='models/text-bison-001', prompt=prompt, temperature=0.1 ) print(completion.result)
برنامه با وارد کردن ماژول های پایتون شروع می شود و سپس کلید API را از متغیر محیطی دریافت می کند. با تنظیم مدل روی models/text-bison-001
و ارسال متغیر prompt، متد generate_text
را فراخوانی میکند.
متغیر دما
قابل پیش بینی بودن مدل را تعریف می کند. مقادیر نزدیک به صفر، خروجی را قطعی و قابل پیش بینی می کند.
خروجی زیر را تولید می کند.
از آنجایی که درخواست به مدل دستور داد که تفاوت را با یک مثال توضیح دهد، مدل با یک پاسخ دقیق پاسخ داد.
اکنون، بیایید همان تمرین را با LangChain تکرار کنیم.
یک Jupyter Notebook جدید راه اندازی کنید و کد زیر را اجرا کنید.
from langchain.embeddings import GooglePalmEmbeddings from langchain.llms import GooglePalm import google.generativeai import os google_api_key=os.getenv('GOOGLE_API_KEY') llm = GooglePalm(google_api_key=google_api_key) llm.temperature = 0.1 prompts = ['Explain the difference between effective and affective with examples'] llm_result = llm._generate(prompts) print(llm_result.generations[0][0].text)
کد نه تنها تمیزتر است، بلکه درک آن نیز ساده است. متغیر llm
را با اشاره به مدل Google PalM مقداردهی اولیه می کند. سپس متغیر دما
را تنظیم می کند.
در LangChain، پارامتر prompts
یک لیست پایتون است. میتوانید همزمان چند درخواست ارسال کنید و چندین نسل را برگردانید.
از آنجایی که ما فقط یک درخواست را ارسال کردیم، به ویژگی متن نسل اول دسترسی پیدا کردیم.
همانطور که می بینیم، خروجی همان برنامه قبلی است.
هدف این آموزش معرفی PalM API و ادغام یکپارچه با LangChain بود. مزیت این روش امکان تعویض LLM با حداقل تغییرات در کد است. با LangChain، LLM به یکی از “پیوندهای” زنجیره تبدیل می شود که می تواند به راحتی جایگزین شود.
در قسمت بعدی این مجموعه، ما یک برنامه پرسش و پاسخ LangChain بر اساس یک سند PDF سفارشی خواهیم ساخت. با ما همراه باشید.
پست های مرتبط
نحوه استفاده از Google’s Palm 2 API با LangChain
نحوه استفاده از Google’s Palm 2 API با LangChain
نحوه استفاده از Google’s Palm 2 API با LangChain