Announcing our new Paper: The Prompt Report, with Co-authors from OpenAI & Microsoft!

Check it out →
🧪 اپلائیڈ پرامٹنگ🟢 GPT-3 سے ChatGPT بنائیں

🟢 GPT-3 سے ChatGPT بنائیں

نے اپ ڈیٹ کیا۔ سینڈر شلہوف کو August 7, 2024 آخری بار

تعارف

ChatGPT نے پچھلے مہینے میں دھوم مچا دی ہے، صرف ایک ہفتے میں ایک ملین صارفین حاصل کر لیے ہیں۔ حیرت انگیز طور پر، بنیادی ماڈل، GPT-3 2020 میں ڈیبیو ہوا اور اسے عوامی رسائی کے لیے جاری کیا گیا

ایک سال پہلے!

ان لوگوں کے لیے جو نہیں جانتے، ChatGPT OpenAI کا ایک نیا زبان کا ماڈل ہے جسے GPT-3 سے بات چیت کے لیے بہتر بنایا گیا تھا1۔ اس میں صارف دوست چیٹ انٹرفیس ہے، جہاں آپ ان پٹ دے سکتے ہیں اور AI اسسٹنٹ سے جواب حاصل کر سکتے ہیں۔ اسے chat.openai.com پر دیکھیں۔

اگرچہ GPT-3 کے ابتدائی ورژن موجودہ GPT-3.5 سیریز کی طرح ترقی یافتہ نہیں تھے، پھر بھی وہ متاثر کن تھے۔ یہ ماڈل ایک API اور ایک

پلے گراؤنڈ ویب UI انٹرفیس کے ذریعے دستیاب ہیں جو آپ کو کنفیگریشن کے کچھ ہائپر پیرامیٹر اور ٹیسٹ پرامپٹس کو ٹیون کرنے دیتا ہے۔ GPT-3 نے اہم کرشن حاصل کیا، لیکن یہ ChatGPT کی وائرلیت تک نہیں پہنچا۔

GPT-3 کے مقابلے میں ChatGPT کو جو چیز اتنی کامیاب بناتی ہے، وہ یہ ہے کہ اوسط فرد کے لیے ڈیٹا سائنس، لینگویج ماڈلز، یا AI کے بارے میں ان کے علم سے قطع نظر، ایک سیدھا سادہ AI اسسٹنٹ کے طور پر اس کی رسائی ہے۔

اس مضمون میں، میں جائزہ لیتا ہوں کہ ChatGPT جیسے چیٹ بوٹس کو GPT-3 جیسے بڑے لینگویج ماڈل کا استعمال کرتے ہوئے کیسے لاگو کیا جا سکتا ہے۔

محرک

یہ مضمون جزوی طور پر

Riley Goodside کی ایک ٹویٹ کی وجہ سے لکھا گیا تھا، جس میں یہ نوٹ کیا گیا تھا کہ ChatGPT کو کیسے نافذ کیا جا سکتا تھا۔

GPT-3.5 سیریز کے دیگر ماڈلز کی طرح، ChatGPT کو RLHF کا استعمال کرتے ہوئے تربیت دی گئی تھی، لیکن اس کی زیادہ تر تاثیر اچھے پرامپٹ کے استعمال سے آتی ہے۔

پرامپٹ

پرامپٹنگ AI کو کچھ کرنے کی ہدایت دینے کا عمل ہے۔

جیسا کہ آپ نے شاید آن لائن ChatGPT کی مثالوں میں دیکھا ہوگا، آپ اسے کچھ بھی کرنے کے لیے کہہ سکتے ہیں۔ عام استعمال کے معاملات میں ٹیکسٹ کا خلاصہ کرنا، تفصیل پر مبنی مواد لکھنا، یا نظمیں، ترکیبیں اور بہت کچھ جیسی چیزیں بنانا شامل ہیں۔

چیٹ جی پی ٹی زبان کا ماڈل اور یوزر انٹرفیس دونوں ہے۔ صارف کی طرف سے انٹرفیس میں پرامپٹ ان پٹ دراصل ایک بڑے پرامپٹ میں ڈالا جاتا ہے جس میں صارف اور ChatGPT کے درمیان ہونے والی پوری گفتگو ہوتی ہے۔ یہ بنیادی زبان کے ماڈل کو گفتگو کے سیاق و سباق کو سمجھنے اور مناسب جواب دینے کی اجازت دیتا ہے۔

لینگویج ماڈل یہ پتہ لگا کر پرامپٹ کو مکمل کرتا ہے کہ اس کے بعد کون سے الفاظ آتے ہیں ان امکانات کی بنیاد پر جو اس نے پری ٹریننگ2 کے دوران سیکھے۔

GPT-3 ایک سادہ ہدایات یا پرامپٹ میں دی گئی چند مثالوں سے 'سیکھنے' کے قابل ہے۔ مؤخر الذکر کو چند شاٹ کہا جاتا ہے، یا سیاق و سباق سیکھنے میں3۔ اوپر دیے گئے چیٹ بوٹ پرامپٹ میں، میں Skippy کے نام سے ایک فرضی چیٹ بوٹ بناتا ہوں، اور اسے صارفین کو جوابات فراہم کرنے کی ہدایت کرتا ہوں۔ GPT-3 آگے اور پیچھے کی شکل میں، USER: {user input} اور SKIPPY: {skippy response} پر اٹھتا ہے۔ GPT-3 سمجھتا ہے کہ Skippy ایک چیٹ بوٹ ہے اور پچھلے تبادلے ایک بات چیت ہیں، تاکہ جب ہم اگلا صارف ان پٹ فراہم کریں تو "Skippy" جواب دے گا۔

حفظ

سکپی اور صارف کے درمیان ماضی کے تبادلے اگلے پرامپٹ میں شامل ہو جاتے ہیں۔ ہر بار جب ہم زیادہ صارف ان پٹ دیتے ہیں اور مزید چیٹ بوٹ آؤٹ پٹ حاصل کرتے ہیں، اس نئے تبادلے کو شامل کرنے کے لیے پرامپٹ پھیلتا ہے۔ اس طرح اسکپی اور چیٹ جی پی ٹی جیسے چیٹ بوٹس پچھلے ان پٹس کو یاد رکھ سکتے ہیں۔ تاہم، ایک حد ہے کہ ایک GPT-3 چیٹ بوٹ کتنا یاد رکھ سکتا ہے۔

متعدد تبادلوں کے بعد پرامپٹس بڑے پیمانے پر حاصل کر سکتے ہیں، خاص طور پر اگر ہم بلاگ پوسٹس جیسے طویل جوابات پیدا کرنے کے لیے چیٹ بوٹ کا استعمال کر رہے ہیں۔ GPT-3 کو بھیجے گئے پرامپٹ ٹوکنز میں تبدیل ہو جاتے ہیں، جو انفرادی الفاظ یا ان کے حصے ہوتے ہیں۔

4097 ٹوکنز کی ایک حد ہے (تقریباً 3000 الفاظ)

ChatGPT سمیت GPT-3 ماڈلز کے لیے مشترکہ پرامپٹ اور تیار کردہ جواب کے لیے۔

چند مثالیں۔

چیٹ بوٹ پرامپٹس کے استعمال کے بہت سے مختلف کیسز ہیں جو پچھلی گفتگو کو محفوظ کرتے ہیں۔ ChatGPT کا مقصد ایک ہمہ مقصد جنرل اسسٹنٹ ہونا ہے اور میرے تجربے میں، یہ شاذ و نادر ہی فالو اپ پوچھتا ہے۔

تھراپی چیٹ بوٹ جو آپ کے دن کے بارے میں پوچھتا ہے۔

چیٹ بوٹ کا ہونا مددگار ثابت ہو سکتا ہے جو فعال طور پر سوالات پوچھتا ہے اور صارف سے رائے لیتا ہے۔ ذیل میں ایک مثال تھیراپی چیٹ بوٹ پرامپٹ ہے جو سوال پوچھے گا اور صارف کو اپنے دن کے بارے میں سوچنے میں مدد کرے گا۔

پرانے جریدے کے اندراجات کا استعمال کرتے ہوئے اپنے چھوٹے سے بات کریں۔

Michelle Huang نے اپنے چھوٹے کے ساتھ بات چیت کرنے کے لیے GPT-3 کا استعمال کیا۔ پرامپٹ کچھ سیاق و سباق کا استعمال کرتا ہے، اس معاملے میں پرانے جریدے کے اندراجات، چیٹ بوٹ اسٹائل کے ساتھ آگے پیچھے کی شکل کے ساتھ جوڑ دی جاتی ہے۔ GPT-3 ان اندراجات کی بنیاد پر کسی شخصیت کی نقل کرنے کے قابل ہے۔

ٹویٹ سے اشارہ:

ذیل میں پریزنٹ مشیل (عمر [رییکٹڈ]) اور ینگ مشیل (عمر 14) کے ساتھ گفتگو ہے۔

ینگ مشیل نے جریدے کے درج ذیل اندراجات لکھے ہیں:
[ڈائری اندراجات یہاں]

مشیل کو پیش کریں: [اپنے سوالات یہاں ٹائپ کریں]

مصنف نوٹ کرتا ہے کہ ڈائری کے اندراجات ٹوکن کی حد تک پہنچ سکتے ہیں۔ اس صورت میں آپ چند اندراجات کو منتخب کر سکتے ہیں یا کئی اندراجات کا خلاصہ کرنے کی کوشش کر سکتے ہیں۔

نفاذ

میں Python میں ایک سادہ GPT-3 سے چلنے والی چیٹ بوٹ کوڈنگ کے ذریعے چلوں گا۔ آپ جو ایپ بنا رہے ہیں اس میں GPT-3 کو شامل کرنا OpenAI API کا استعمال کرتے ہوئے ناقابل یقین حد تک آسان ہے۔ آپ کو OpenAI پر ایک اکاؤنٹ بنانے اور ایک API کلید حاصل کرنے کی ضرورت ہوگی۔ ان کی دستاویزات

یہاں دیکھیں۔

ہمیں کیا کرنے کی ضرورت ہے اس کا جائزہ:

  1. صارف کے ان پٹ کو GPT-3 کے لیے چیٹ بوٹ پرامپٹ میں فارمیٹ کریں۔
  2. GPT-3 سے تکمیل کے طور پر چیٹ بوٹ کا جواب حاصل کریں۔
  3. صارف کے ان پٹ اور چیٹ بوٹ کے جواب دونوں کے ساتھ پرامپٹ کو اپ ڈیٹ کریں۔
  4. لوپ

یہ پرامپٹ ہے جو میں استعمال کروں گا۔ ہم python کو

<conversation history>

اور

<user input>

کو ان کی اصل قدروں سے بدلنے کے لیے استعمال کر سکتے ہیں۔

chatbot_prompt = """
    As an advanced chatbot, your primary goal is to assist users to the best of your ability. This may involve answering questions, providing helpful information, or completing tasks based on user input. In order to effectively assist users, it is important to be detailed and thorough in your responses. Use examples and evidence to support your points and justify your recommendations or solutions.


<conversation history>

    User:
<user input>
    Chatbot:"""

میں اگلے صارف کے ان پٹ اور پچھلی گفتگو دونوں پر نظر رکھتا ہوں۔ چیٹ بوٹ اور صارف کے درمیان نیا ان پٹ/آؤٹ پٹ ہر لوپ کو جوڑ دیا جاتا ہے۔

import openai

openai.api_key = "YOUR API KEY HERE"
model_engine = "text-davinci-003"
chatbot_prompt = """
As an advanced chatbot, your primary goal is to assist users to the best of your ability. This may involve answering questions, providing helpful information, or completing tasks based on user input. In order to effectively assist users, it is important to be detailed and thorough in your responses. Use examples and evidence to support your points and justify your recommendations or solutions.

<conversation history>

User:
<user input>
Chatbot:"""


def get_response(conversation_history, user_input):
    prompt = chatbot_prompt.replace("<conversation history>", conversation_history).replace("<user input>", user_input)

    # Get the response from GPT-3
    response = openai.Completion.create(
        engine=model_engine, prompt=prompt, max_tokens=2048, n=1, stop=None, temperature=0.5)

    # Extract the response from the response object
    response_text = response["choices"][0]["text"]

    chatbot_response = response_text.strip()

    return chatbot_response


def main():
    conversation_history = ""

    while True:
        user_input = input(">")
        if user_input == "exit":
            break
        chatbot_response = get_response(conversation_history, user_input)
        print(f"Chatbot: {chatbot_response}")
        conversation_history += f"User: {user_input}\nChatbot: {chatbot_response}\n"

main()

ایک سادہ چیٹ بوٹ کے مکمل کوڈ کا

یہاں ایک لنک ہے

۔

اب صرف ایک اچھا فرنٹ اینڈ بنانا باقی ہے جس کے ساتھ صارفین بات چیت کر سکیں!

jayo78 کی تحریر کردہ۔

Footnotes

  1. OpenAI. (2022). ChatGPT: Optimizing Language Models for Dialogue. https://openai.com/blog/chatgpt/. https://openai.com/blog/chatgpt/

  2. Jurafsky, D., & Martin, J. H. (2009). Speech and Language Processing: An Introduction to Natural Language Processing, Computational Linguistics and Speech Recognition. Prentice Hall.

  3. Brown, T. B., Mann, B., Ryder, N., Subbiah, M., Kaplan, J., Dhariwal, P., Neelakantan, A., Shyam, P., Sastry, G., Askell, A., Agarwal, S., Herbert-Voss, A., Krueger, G., Henighan, T., Child, R., Ramesh, A., Ziegler, D. M., Wu, J., Winter, C., … Amodei, D. (2020). Language Models are Few-Shot Learners.

Word count: 0

Get AI Certified by Learn Prompting


Copyright © 2024 Learn Prompting.