چیٹ ماڈلز
چیٹ ماڈلز زبان ماڈلز کی ایک شاخ ہیں۔ اگرچہ چیٹ ماڈلز زیریں سطح پر زبان ماڈلز (LLM) کا استعمال کرتے ہیں، لیکن ان کے عوامی انٹرفیس میں کچھ فرق ہوتا ہے۔ یہ "داخلی متن، خروجی متن" کے لیے ایک API ظاہر نہیں کرتے، بلکہ وہ ایک انٹرفیس استعمال کرتے ہیں جو "چیٹ میسیجز" کو داخلی مانند قبول کرتا ہے اور خروجی کے طور پر دیتا ہے۔ چیٹ ماڈلز کے مکمل تعامل کا عمل چیٹ میسیجز تبادل کرنے کے عمل کی طرح ہوتا ہے۔
چیٹ ماڈلز کے ساتھ شروع ہونا
یہ باب اوپن اے آئی ماڈل پر مبنی ہے۔
تشکیل
پہلے تو، لینگ چین کے پاس ماڈل ڈپنڈنسیز نصب نہیں ہوتے۔ اوپن اے آئی پائتھن پیکیج کو سب سے پہلے انسٹال کریں:
pip install langchain-openai
API تک رسائی حاصل کرنے کے لیے API کلید کی ضرورت ہوتی ہے، جو ماحولیاتی متغیرات کے ذریعے تشکیل دی جاسکتی ہے۔ زیر میں دی گئی مثال وضاحت دیتی ہے کہ یہ لینکس ماحول میں کیسے سیٹ کیا جاسکتا ہے۔
export OPENAI_API_KEY="..."
اگر آپ محیط متغیرات تشکیل نہیں دینا چاہتے تو، تو آپ مستقیم طور پر openai_api_key
نام کے پیرامیٹر کے ذریعے کلید منسلک کر سکتے ہیں چیٹ اوپن اے آئی LLM کلاس کو تشکیل دیتے ہوئے:
from langchain_openai import ChatOpenAI
chat = ChatOpenAI(openai_api_key="...")
اس کے علاوہ، آپ اسے کسی بھی پیرامیٹر کے بغیر تشکیل دے سکتے ہیں:
from langchain_openai import ChatOpenAI
chat = ChatOpenAI()
میسیجز
چیٹ ماڈل کا انٹرفیس را مواد پر نہیں بلکہ پیغامات پر مبنی ہوتا ہے۔ لینگ چین کی طرف سے فی الحال پیغام کی قسم جیسے AIMessage
، HumanMessage
، SystemMessage
، FunctionMessage
، اور ChatMessage
کی سپورٹ ملتی ہے، جہاں ChatMessage
میں ایک بے ربط کردار پیرامیٹر کی ضرورت ہوتی ہے۔ اکثر مواقع پر، آپ صرف HumanMessage
، AIMessage
، اور SystemMessage
کے ساتھ ہی کام کریں گے۔
LCEL
چیٹ ماڈل Runnable interface
کو نافذ کرتا ہے، جس میں invoke
، ainvoke
، stream
، astream
، batch
، abatch
، astream_log
وغیرہ جیسے تراکیب کو سپورٹ کرتا ہے، لہذا چیٹ ماڈل کو لینگ چین ایکسپریشن لینگویج (LCEL) ایکسپریشن کے لیے بھی استعمال کیا جاسکتا ہے۔
چیٹ ماڈل متن کی صورت میں List[BaseMessage]
کو داخلی قبول کرتا ہے، یا پرامیٹرس کا استقبال کر سکتا ہے جو پیغامات میں تبدیل کیا جا سکتا ہے، جیسے str
(محول کرنے والا HumanMessage
) اور PromptValue
۔
from langchain_core.messages import HumanMessage, SystemMessage
messages = [
SystemMessage(content="آپ ایک مددگار سہارا ہیں"),
HumanMessage(content="ماڈل ریگولرائزیشن کا مقصد کیا ہے؟"),
]
پیغامات کی ایک انٹرفیس کے ساتھ ماڈل کو بلانے کا طریقہ:
chat.invoke(messages)
واپسی پیغام کا مثال:
AIMessage(content="ای-آئی ریسپانس مواد...تفصیلات مخفی...")
ای-آئی ریسپانس کا آپجھی لینا:
for chunk in chat.stream(messages):
print(chunk.content, end="", flush=True)