۳۰ شهریور ۱۴۰۳

Techboy

اخبار و اطلاعات روز تکنولوژی

نحوه استفاده از Google’s Palm 2 API با LangChain

از مزایای LangChain می توان به کدهای تمیز و ساده و امکان تعویض مدل ها با حداقل تغییرات اشاره کرد. بیایید LangChain را با مدل زبان بزرگ PalM 2 امتحان کنیم.

از مزایای LangChain می توان به کدهای تمیز و ساده و امکان تعویض مدل ها با حداقل تغییرات اشاره کرد. بیایید LangChain را با مدل زبان بزرگ PalM 2 امتحان کنیم.

مدل‌های زبان بزرگ (LLM) برای تبدیل شدن به بخشی جدایی ناپذیر از پشته نرم‌افزار پدید آمده‌اند. آنها از طریق APIهای ارائه دهندگانی مانند Cohere، Google Cloud و OpenAI a> یا به عنوان مدل های منبع باز میزبانی شده در صورت در آغوش گرفته.

با این حال، استفاده از LLM ها صرفاً در مورد ارسال درخواست نیست. توسعه دهندگان باید جنبه هایی مانند تنظیمات پارامتر، افزایش سریع و تعدیل پاسخ را در نظر بگیرند. LLM ها بدون حالت هستند، بنابراین توسعه دهندگان باید تاریخچه مکالمه را برای زمینه حفظ کنند، احتمالاً از پایگاه داده برای ذخیره سازی طولانی مدت استفاده کنند.

علاوه بر این، راه حل جهانی LLM وجود ندارد. برنامه ها ممکن است به مدل های تخصصی مختلفی نیاز داشته باشند که یکپارچه سازی را پیچیده و پیچیدگی توسعه را افزایش می دهد.

گلنگ چک کننده آسیب پذیری پرچم آسیب پذیری های Go

LangChain در حال تبدیل شدن به ابزار منتخب برای توسعه دهندگانی است که برنامه های کاربردی درجه تولید را با استفاده از LLM ایجاد می کنند. دارای یک اکوسیستم متنوع و پر جنب و جوش است که ارائه دهندگان مختلف را زیر یک سقف قرار می دهد، از جمله مدل زبان بزرگ PaLM2 Google.< /p>

در این آموزش، مراحل ساخت یک برنامه LangChain با پشتیبانی از مدل Google PalM 2 را طی می کنیم.

تنظیم محیط

از Google MakerSuite دیدن کنید و یک کلید API برای PalM ایجاد کنید.

palm 2 langchain 01

در ترمینال، یک محیط مجازی پایتون ایجاد کنید و آن را فعال کنید.

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 را فراخوانی می‌کند.

حرفه ابری خود را بهینه کنید

متغیر دما قابل پیش بینی بودن مدل را تعریف می کند. مقادیر نزدیک به صفر، خروجی را قطعی و قابل پیش بینی می کند.

خروجی زیر را تولید می کند.

palm 2 langchain 02

از آنجایی که درخواست به مدل دستور داد که تفاوت را با یک مثال توضیح دهد، مدل با یک پاسخ دقیق پاسخ داد.

اکنون، بیایید همان تمرین را با 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 مقداردهی اولیه می کند. سپس متغیر دما را تنظیم می کند.

10 روشی که داستان علمی تخیلی با تکنولوژی بالا اشتباه گرفته است

در LangChain، پارامتر prompts یک لیست پایتون است. می‌توانید همزمان چند درخواست ارسال کنید و چندین نسل را برگردانید.

از آنجایی که ما فقط یک درخواست را ارسال کردیم، به ویژگی متن نسل اول دسترسی پیدا کردیم.

palm 2 langchain 03

همانطور که می بینیم، خروجی همان برنامه قبلی است.

هدف این آموزش معرفی PalM API و ادغام یکپارچه با LangChain بود. مزیت این روش امکان تعویض LLM با حداقل تغییرات در کد است. با LangChain، LLM به یکی از “پیوندهای” زنجیره تبدیل می شود که می تواند به راحتی جایگزین شود.

در قسمت بعدی این مجموعه، ما یک برنامه پرسش و پاسخ LangChain بر اساس یک سند PDF سفارشی خواهیم ساخت. با ما همراه باشید.

این سریال