Generative AI Fundamentals Sinhala Guide | AWS AI | Prompt Engineering | Foundation Models | Transformer Architecture
ආයුබෝවන් යාළුවනේ!
අද අපි කතා කරන්න යන්නේ මේ දවස් වල හැමතැනම කතාබහට ලක්වෙන අතිශය වැදගත් සහ රසවත් මාතෘකාවක් ගැන – Generative AI! මේක අලුත් දෙයක් වුණාට, Technology ලෝකයේ ලොකු පෙරළියක් කරන්න පුළුවන් හැකියාවක් තියෙනවා. අපි මේ Guide එකෙන් බලමු මොකක්ද මේ Generative AI කියන්නේ, කොහොමද මේක වැඩ කරන්නේ, ඒ වගේම AWS වැනි Cloud Platform එකක මේවා කොහොමද අපි භාවිත කරන්නේ කියලා. සරලව කිව්වොත්, නිර්මාණශීලීව අලුත් දේවල් හදන්න පුළුවන් Artificial Intelligence (AI) වර්ගයක් තමයි මේ Generative AI කියන්නේ. මේකෙන් ඔයාලට ඔයාලගේ දෛනික වැඩ වලට සහ අනාගත Project වලට ලොකු සහයක් ලැබෙයි කියලා මම විශ්වාස කරනවා. අපි පටන් ගමු එහෙනම්!
Generative AI යනු කුමක්ද?
Generative AI කියන්නේ, නමටම කියවෙන විදියට, අලුත්, මුල් පිටපතකට සමාන (නමුත් මුල් පිටපතක් නොවන) දත්ත නිර්මාණය කරන්න පුළුවන් Artificial Intelligence (AI) වර්ගයක්. සරලව කිව්වොත්, මේ AI Models ට පුළුවන් කලින් ඉගෙන ගත්ත දත්ත Patterns පාවිච්චි කරලා, අලුත් Text, Images, Audio, Video, Code, ඒ වගේම 3D Models වගේ ඕනෑම දෙයක් හදන්න. අපි සාමාන්යයෙන් දකින AI Models කරන්නේ දත්ත Classification කරන එක (උදා: මේක බල්ලෙක්ද බළලෙක්ද කියලා කියන එක) නැත්නම් Predictions කරන එක (උදා: ලබන අවුරුද්දේ Share මිල කොහොමද කියලා කියන එක). හැබැයි Generative AI Models කරන්නේ ඊට එහා ගිය දෙයක් – ඒ කියන්නේ නිර්මාණශීලීව අලුත් දේවල් හදන එක.
උදාහරණයක් විදියට, ඔයාට පුළුවන් Generative AI Model එකකට ‘නිල් පාට දොඹකරයක් (dragonfly) මල් වත්තක ඉන්නවා වගේ ලස්සන පින්තූරයක් හදන්න’ කියලා Instruction එකක් දෙන්න. Model එක ඒ Instruction එකට අනුව අලුත්ම පින්තූරයක් හදලා දෙනවා. ඒක කලින් තිබ්බ පින්තූරයක් නෙමෙයි, Model එක විසින්ම හදපු අලුත්ම නිර්මාණයක්. මේක තමයි Generative AI වල තියෙන විශේෂත්වය.
මේ AI Models පුහුණු කරලා තියෙන්නේ විශාල දත්ත කට්ටල (Datasets) ගොඩක් පාවිච්චි කරලා. ඒ දත්ත වලින් තමයි මේවා Patterns, Structures, සහ Relationships ඉගෙන ගන්නේ. ඒ නිසා, අලුත් දෙයක් හදන්න කිව්වහම, මේවාට පුළුවන් ඉගෙන ගත්ත දේට අනුව අලුත්, තර්කානුකූල සහ විශ්වාසදායක ප්රතිඵල දෙන්න.
Foundation Models (FMs)
දැන් අපි කතා කරමු Generative AI වල හදවත වගේ වෙන Foundation Models (FMs) ගැන. Foundation Model එකක් කියන්නේ, විශාල දත්ත ප්රමාණයක් (Petabytes ගණන්) මත පුහුණු කරපු, ඉතා විශාල, ප්රබල AI Model එකක්. මේ Models පුහුණු කරලා තියෙන්නේ විවිධ ආකාරයේ පොදු කර්තව්යයන් (general-purpose tasks) රාශියක් ඉටු කරන්න පුළුවන් විදියට. ඒ කියන්නේ, එක Foundation Model එකකට Text Generate කරන්න, Code ලියන්න, Questions වලට උත්තර දෙන්න, Summaries හදන්න, Language Translate කරන්න, වගේ ගොඩක් දේවල් කරන්න පුළුවන්.
මොකක්ද මේවායේ විශේෂත්වය?
- Versatility (බහුකාර්යතාව): එක Model එකක් විවිධ කාර්යයන් ගණනාවක් සඳහා යොදාගන්න පුළුවන්. ඔයාට වෙන වෙනම Models හදන්න ඕනේ නැහැ.
- Scalability (පරිමාණය): මේවා හදලා තියෙන්නේ ලොකු පරිමාණයකින් වැඩ කරන්න.
- Transfer Learning: මේ Models වලට පුළුවන් තමන් ඉගෙන ගත්ත දැනුම, අලුත්, කුඩා දත්ත කට්ටලයක් මත ‘Fine-tune’ කිරීමෙන් විශේෂිත කාර්යයන් සඳහා යොදාගන්න. උදාහරණයක් විදියට, සාමාන්ය Text Generate කරන්න පුළුවන් FM එකක් අරගෙන, ඔයාගේ Company එකේ Internal Documents ටිකක් දීලා Fine-tune කළොත්, ඒකෙන් ඔයාගේ Company එකටම විශේෂිත Text Generate කරන්න පුළුවන් වෙනවා.
- Emergent Abilities: සමහර වෙලාවට මේ Models වලට පුළුවන් අපි පුහුණු කරනකොට හිතුවේ නැති, අලුත් හැකියාවන් පෙන්වන්න.
AWS වගේ Cloud Platform එකක, මේ Foundation Models වලට පහසුවෙන් Access කරන්න පුළුවන්. Amazon Bedrock වගේ Service එකක් තමයි ඒකට තියෙන්නේ. ඒකෙන් අපිට විවිධ FMs (Amazon Titan Models, Anthropic’s Claude, AI21 Labs’ Jurassic, Stability AI’s Stable Diffusion) භාවිත කරන්න පුළුවන්, අපේම Applications හදන්න.
Transformer Architecture සහ Attention Mechanisms
දැන් අපි බලමු මේ Generative AI Models, විශේෂයෙන්ම Large Language Models (LLMs) වැඩ කරන විදියට බලපාන ප්රධානතම තාක්ෂණය මොකක්ද කියලා: ඒ තමයි Transformer Architecture එක. Google Research කණ්ඩායම විසින් 2017 දී ඉදිරිපත් කරපු ‘Attention Is All You Need’ කියන Paper එකෙන් තමයි මේ Transformer එක ගැන ලෝකයට හඳුන්වා දුන්නේ. මේකෙන් කලින් තිබුණු Recurrent Neural Networks (RNNs) සහ Long Short-Term Memory (LSTMs) වල තිබ්බ සීමාවන් ගොඩක් දුරට ජයගත්තා.
Transformer Architecture
Transformer එකක ප්රධාන කොටස් දෙකක් තියෙනවා:
- Encoder: මේක කරන්නේ Input එක තේරුම් අරගෙන, ඒකේ Semantic Information එක Extract කරන එක. සරලව කිව්වොත්, අපි දෙන Text එකේ තේරුම සහ වැදගත්කම තේරුම් ගන්න එක.
- Decoder: මේක කරන්නේ Encoder එකෙන් ලැබෙන තොරතුරු පාවිච්චි කරලා, Output එක Generate කරන එක.
මේ දෙකම Attention Mechanism කියන දේ මත තමයි වැඩ කරන්නේ.
Attention Mechanism
Attention Mechanism එක තමයි Transformer Architecture එකේ ‘Magic’ එක කියලා කියන්න පුළුවන්. අපි Text එකක් කියවනකොට, අපි වාක්යයක තියෙන හැම වචනයකටම එක වගේ අවධානයක් දෙන්නේ නැහැනේ. සමහර වචන අනිත් වචන වලට වඩා වැදගත්. Attention Mechanism එක කරන්නේ හරියට ඒ වගේ දෙයක්.
AI Model එකකට Input Text එකක තියෙන හැම වචනයක් දිහාම බලලා, අදාළ Output එක Generate කරන්න ඕනේ නම්, මොන වචන වලටද වැඩි අවධානයක් දෙන්න ඕනේ කියලා තීරණය කරන එක තමයි Attention වලින් කරන්නේ.
උදාහරණයක් විදියට, ‘The cat sat on the mat because it was tired.’ කියන වාක්යයේ ‘it’ කියන Pronoun එක ‘cat’ කියන Noun එකට අදාළයි. Model එකට මේ Relationship එක තේරුම් ගන්න Attention Mechanism එක උදව් වෙනවා. ඒකෙන් පුළුවන් වාක්යයක දුරින් තියෙන වචන අතර සම්බන්ධතා පවා හඳුනාගන්න. මේක ‘Self-Attention’ කියලා හඳුන්වනවා.
මේ Self-Attention නිසා, Transformer Models වලට දිගු වාක්ය ඛණ්ඩ (long sequences) වල තොරතුරු වඩා හොඳින් මතක තියාගන්න සහ ඒවයේ තියෙන සංකීර්ණ සම්බන්ධතා තේරුම් ගන්න පුළුවන් වෙනවා. ඒක තමයි ChatGPT වගේ Models වල විශිෂ්ට හැකියාවට ප්රධානතම හේතුවක්.
Generative Models vs. Discriminative Models
Generative AI ගැන කතා කරනකොට, Discriminative Models ගැනත් ටිකක් දැනගෙන ඉන්න එක වැදගත්. මොකද මේ දෙකම AI Models වුණත්, ඒවායේ වැඩ කරන විදිය සහ අරමුණු වෙනස්.
Discriminative Models
- අරමුණ: මේවායේ ප්රධාන අරමුණ තමයි දත්ත වර්ගීකරණය කිරීම (Classification) නැත්නම් අගයන් අනාවැකි කීම (Prediction).
- වැඩ කරන විදිය: මේවා දත්ත කට්ටලයක තියෙන Input Features (X) සහ Output Labels (Y) අතර තියෙන සීමාවන් (boundaries) ඉගෙන ගන්නවා. ඒ කියන්නේ X දීලා Y මොකක්ද කියලා කියන්න පුහුණු කරනවා.
- උදාහරණ:
- Image Classification: දුන්න පින්තූරයක තියෙන්නේ බල්ලෙක්ද බළලෙක්ද කියලා කියන එක.
- Spam Detection: Email එකක් Spam ද Non-spam ද කියලා හඳුනාගන්න එක.
- Sentiment Analysis: Text එකක තියෙන හැඟීම Positive ද Negative ද කියලා කියන එක.
- නිර්මාණශීලීද? නැහැ. මේවා අලුත් දත්ත නිර්මාණය කරන්නේ නැහැ, තියෙන දත්ත ගැන විග්රහ කරනවා විතරයි.
Generative Models
- අරමුණ: මේවායේ ප්රධාන අරමුණ තමයි පුහුණු කරපු දත්ත වලට සමාන, අලුත් දත්ත නිර්මාණය කිරීම.
- වැඩ කරන විදිය: මේවා පුහුණු දත්ත කට්ටලයේ තියෙන සම්පූර්ණ දත්ත Distribution එකම ඉගෙන ගන්නවා. ඒ කියන්නේ X සහ Y අතර සම්බන්ධය විතරක් නෙමෙයි, X එකේ Structure එකත් ඉගෙන ගන්නවා.
- උදාහරණ:
- Text Generation: Prompt එකක් දීලා කතාවක්, කවියක්, නැත්නම් Article එකක් ලියන එක.
- Image Generation: Text Description එකක් දීලා පින්තූරයක් හදන එක.
- Music Composition: අලුත් Music Piece එකක් හදන එක.
- නිර්මාණශීලීද? ඔව්. මේවා අලුත්, මුල් දත්ත නිර්මාණය කරනවා.
සරලව කිව්වොත්, Discriminative Model එකක් ‘මේක මොකක්ද?’ කියලා කියනකොට, Generative Model එකක් ‘අලුත් දෙයක් හදමු!’ කියලා කියනවා.
Prompt Engineering Basics
Generative AI Models එක්ක වැඩ කරනකොට, අපිට තියෙන ප්රධානම Tools එක තමයි ‘Prompt’ එක. Prompt එකක් කියන්නේ, අපි AI Model එකට දෙන Instruction එක, Question එක, නැත්නම් Initial Text එක. Model එකෙන් අපිට ඕන කරන Output එක ගන්න නම්, අපි හොඳ Prompt එකක් දෙන්න ඕනේ. මේ හොඳ Prompt එකක් හදන ක්රියාවලියට තමයි Prompt Engineering කියන්නේ.
හොඳ Prompt එකක් කියන්නේ මොකක්ද? ඒක පැහැදිලි, නිවැරදි, සහ Model එකට අපේ අරමුණ හොඳින් තේරුම් ගන්න පුදව් වෙන එකක්.
මෙන්න මේ දේවල් මතක තියාගන්න:
- Bad Prompt: “Write about dogs.” (අවිධිමත්)
- Good Prompt: “Write a short, heartwarming story about a golden retriever puppy’s first snow day, focusing on its playful interaction with a child, in about 200 words.” (පැහැදිලි සහ නිශ්චිත)
- Prompt Example: “You are a senior software engineer explaining object-oriented programming to a junior developer. Explain Polymorphism with a simple Java example.” (මෙහිදී Model එකට ‘role’ එකක් දීලා තියෙනවා.)
- Prompt Example: “List three benefits of using Python for data analysis, formatted as a numbered list.”
Prompt Example (Few-shot):
"Review Classification:
Review: 'This movie was fantastic! I loved every moment.'
Sentiment: Positive
Review: 'The service was terrible and the food was cold.'
Sentiment: Negative
Review: 'It was an okay experience, nothing special.'
Sentiment: Neutral
Review: 'The book kept me hooked from start to finish.'
Sentiment:"
(Model එකෙන් ‘Positive’ කියලා Answer කරන්න ඉඩ තියෙනවා)
Constraints and Examples (සීමාවන් සහ උදාහරණ):
Output එකේ තිබිය යුතු සහ නොතිබිය යුතු දේවල් මොනවාද කියලා කියන්න. ‘Few-shot learning’ කියන්නේ මේකට හොඳ උදාහරණයක්. එතනදී ඔයා Model එකට Examples කිහිපයක් දීලා, ඒ Pattern එකට අනුව වැඩ කරන්න කියලා කියනවා.Prompt Engineering කියන්නේ පුහුණුවෙන් දියුණු කරගන්න පුළුවන් Skill එකක්. විවිධ Prompts අත්හදා බලලා, ඔයාට ඕන කරන Output එක ගන්න පුළුවන් විදිය ඉගෙන ගන්න එක තමයි වැදගත්.
Code Example:
Prompt:
"Write a simple Python function that calculates the factorial of a number.
The function should be named `calculate_factorial` and take one integer argument `n`.
Include a docstring explaining the function's purpose and an example of its usage."
Expected Output (by the AI):
def calculate_factorial(n):
"""
Calculates the factorial of a non-negative integer.
Args:
n (int): The number to calculate the factorial for.
Returns:
int: The factorial of n.
Example:
>>> calculate_factorial(5)
120
"""
if n < 0:
return "Factorial is not defined for negative numbers"
elif n == 0:
return 1
else:
factorial = 1
for i in range(1, n + 1):
factorial *= i
return factorial
# Example usage:
num = 5
print(f"The factorial of {num} is {calculate_factorial(num)}")
Output Format (ප්රතිඵලයේ ආකෘතිය):
ඔයාට Output එක මොන Format එකෙන්ද ඕනේ කියලා කියන්න. (e.g., list, paragraph, JSON, code snippet)
Context (පසුබිම):
Model එකට Output එක Generate කරන්න අවශ්ය පසුබිම (context) දෙන්න.
Clear and Specific Instructions (පැහැදිලි සහ නිශ්චිත උපදෙස්):
ඔයාට මොකක්ද ඕනේ කියලා පැහැදිලිව කියන්න. Ambiguity (ගැටළු සහගත බව) අඩු කරන්න.
Ethical Considerations (ආචාර ධර්මමය කරුණු)
Generative AI කියන්නේ පුදුම සහගත තාක්ෂණයක් වුණාට, ඒක භාවිත කරනකොට අපිට පොදු සමාජයට බලපාන වැදගත් කරුණු කිහිපයක් ගැනත් අවධානය යොමු කරන්න වෙනවා. මේවා තමයි Ethical Considerations.
Job Displacement (රැකියා අහිමි වීම):
Generative AI වලට කලින් මිනිස්සු කරපු සමහර රැකියා (e.g., Content Writing, Basic Code Generation) ස්වයංක්රීයව කරන්න පුළුවන් වෙනවා. මේක සමාජයට සහ ආර්ථිකයට බලපාන ආකාරය ගැන සැලකිලිමත් වෙන්න ඕනේ.
Copyright and Intellectual Property (ප්රකාශන හිමිකම් සහ බුද්ධිමය දේපල):
AI Model එකක් Artwork එකක්, Music Piece එකක්, නැත්නම් Code එකක් Generate කළොත්, ඒකේ Copyright එක අයිති කාටද කියන ප්රශ්නය මතුවෙනවා. ඒ වගේම, Model එක පුහුණු කරන්න භාවිත කරපු දත්ත වල Copyright එක ගැනත් හිතන්න වෙනවා.
Data Privacy and Security (දත්ත පුද්ගලිකත්වය සහ ආරක්ෂාව):
Generative Models පුහුණු කරන්න පුද්ගලික දත්ත භාවිත කරන්න පුළුවන්. මේ දත්ත ආරක්ෂා කිරීම සහ පුද්ගලිකත්වය තහවුරු කිරීම අතිශයින් වැදගත්. Model එකෙන් Generate කරන Output වලට පුහුණු දත්ත වල තිබුණු පුද්ගලික තොරතුරු අහම්බෙන් හෝ ඇතුළත් වෙන්න පුළුවන්.
Misinformation and Disinformation (වැරදි තොරතුරු සහ ව්යාජ තොරතුරු):
Generative AI වලට පුළුවන් ඉතාමත් යථාර්ථවාදී (realistic) ව්යාජ තොරතුරු (fake news), Deepfakes, සහ නොමග යවනසුළු Text Generate කරන්න. මේක සමාජයට ලොකු තර්ජනයක්. මේ වගේ අවස්ථාවලදී AI Output එකක විශ්වාසනීයත්වය (credibility) පරීක්ෂා කිරීමේ අවශ්යතාවය වැඩි වෙනවා.
Bias (පක්ෂග්රාහී බව):
Generative Models පුහුණු කරලා තියෙන්නේ විශාල දත්ත කට්ටල (Datasets) මත. මේ දත්ත වල මිනිස් සමාජයේ තියෙන Bias (sexism, racism වගේ දේවල්) තියෙන්න පුළුවන්. ඒ නිසා, Model එකෙන් Generate කරන Output වලත් මේ Bias පෙන්වන්න පුළුවන්. උදාහරණයක් විදියට, ‘Doctor’ කෙනෙක් ගැන Image එකක් Generate කරන්න කිව්වොත්, හැමවිටම පිරිමි Doctor කෙනෙක්ගේ පින්තූරයක් Generate කරන්න ඉඩ තියෙනවා. මේ Bias අඩු කරන්න දත්ත කට්ටල හොඳින් පරීක්ෂා කරලා, Model එක Fine-tune කිරීම වැදගත්.
මේ හැම කරුණක් ගැනම හිතලා, ‘Responsible AI’ කියන සංකල්පය යටතේ AI තාක්ෂණය සංවර්ධනය කරන්න සහ භාවිත කරන්න අපි හැමෝම බැඳිලා ඉන්නවා.
නිගමනය (Conclusion)
ඉතින් යාළුවනේ, මේ Guide එකෙන් ඔයාලට Generative AI ගැන හොඳ අවබෝධයක් ලැබෙන්න ඇති කියලා මම හිතනවා. අපි බැලුවා මොකක්ද මේ Generative AI කියන්නේ, Foundation Models වල වැදගත්කම, Transformer Architecture එකේ සහ Attention Mechanism එකේ ක්රියාකාරීත්වය, Generative Models සහ Discriminative Models අතර වෙනස, සහ Prompt Engineering වල මූලික කරුණු ගැන. ඒ වගේම, මේ තාක්ෂණය භාවිත කරනකොට අපිට මුහුණ දෙන්න වෙන Ethical Issues ගැනත් අපි කතා කළා.
Generative AI කියන්නේ අලුත් ලෝකයක් විවෘත කරන තාක්ෂණයක්. මේකෙන් අපිට අලුත් නිර්මාණ කරන්න, වැඩ පහසු කරගන්න, සහ අපි හිතපු නැති ප්රශ්න වලට විසඳුම් හොයාගන්න පුළුවන්. AWS වගේ Cloud Platforms වලින් මේ වගේ Models වලට Access එක ලබාදෙන නිසා, ඕනෑම කෙනෙකුට මේවා අත්හදා බලන්න අවස්ථාව තියෙනවා.
ඔයාලත් මේ ගැන තව දුරටත් ඉගෙන ගන්න, පොඩි Prompts ලියලා බලන්න, විවිධ Generative AI Tools පාවිච්චි කරලා බලන්න කියලා මම ආරාධනා කරනවා. ඔයාලගේ අත්දැකීම් මොනවාද? ඔයාලට මේ Guide එක ගැන මොන වගේ අදහස්ද තියෙන්නේ? පහළින් Comment කරන්න අමතක කරන්න එපා. අපි තවත් මේ වගේ වැදගත් Technology Topics එක්ක නැවත හමුවෙමු! සුබ දවසක්!