The Glorified Autocomplete
Tech marketing වල කියන විදිහට Generative AI කියන්නේ තව ටික දවසකින් ලෝකයම පාලනය කරන්න යන සුපිරි මොළයක්. හැබැයි ඇත්තම කතාව ඊට වඩා ගොඩක් සරලයි. සරලවම කිව්වොත් GPT-4 වගේ Large Language Model (LLM) එකක් කියන්නේ අපේ phone එකේ තියෙන autocomplete පහසුකමේ ඉතාමත් දියුණු, super-powered version එකක් විතරයි.
ඔයා phone එකේ "I am going to the..." කියලා type කරද්දී phone එකෙන් "store," "gym," හෝ "beach" වගේ වචන suggest කරනවා නේද? Phone එක දන්නේ නැහැ ඔයා ඇත්තටම කොහේද යන්නේ කියලා. හැබැයි කලින් මිලියන ගණනක් මිනිස්සු ලියපු messages analysis කරලා, ඒ වචන වලට පස්සේ වැඩිපුරම යෙදෙන්නේ මොන වචනද කියලා ඌට probability එකක් තියෙනවා. Generative AI වැඩ කරන්නෙත් ඔන්න ඔය ක්රමයටමයි, හැබැයි ඉතා විශාල scale එකකින්.
Tokens: AI එකේ හෝඩිය
Computers වලට වචන, හැඟීම් හෝ භාෂාවන් තේරෙන්නේ නැහැ. උන්ට තේරෙන්නේ numbers විතරයි. ඒ නිසා ඔයා දෙන prompt එකක් process කරන්න කලින්, AI model එක ඒ text එක tokens වලට කඩනවා. Token එකක් කියන්නේ සම්පූර්ණ වචනයක්, වචනයක කොටසක් හෝ එක අකුරක් වෙන්න පුළුවන්.
උදාහරණයක් විදිහට "unbelievable" කියන වචනය tokens තුනකට කැඩෙන්න පුළුවන්: "un", "believ", සහ "able". Model එක මේ tokens ටික mathematical vectors (සංඛ්යා සමූහයක්) වලට හරවලා, ඊළඟට එන්න ඕනේ වඩාත්ම ගැලපෙන token එක මොකක්ද කියලා calculate කරනවා.
Temperature: AI එකේ "මතකය" පාලනය කරන slider එක
AI එක හැමවෙලේම ඊළඟට එන්න තියෙන වඩාත්ම නිවැරදි වචනය විතරක් තේරුවොත්, හැමදාම ලැබෙන්නේ එකම විදිහේ කම්මැලි උත්තරයක්. මේක පාලනය කරන්න developers ලා temperature කියන parameter එක පාවිච්චි කරනවා. මේක හරියට AI එකට කොච්චර නිදහසක් දෙනවද කියලා තීරණය කරන slider එකක් වගේ:
- Temperature 0.0: ඉතාමත් නිවැරදි සහ සීමිතයි. Model එක හැමවෙලේම තෝරගන්නේ probability එක වැඩිම වචනය විතරයි. Code ලියන්න සහ facts හොයන්න මේක නියමයි.
- Temperature 0.7: සාමාන්ය මට්ටම. නිර්මාණශීලී වගේම ගැලපෙන උත්තර ලැබෙනවා.
- Temperature 1.5+: සම්පූර්ණ අවුල් ජාලාවක්. Model එක කිසිම ගැලපීමක් නැති වචන තෝරන්න ගන්නවා.
Predicting the Next Word in Python
LLM එකක් ඇතුලේ ඊළඟ වචනය predict කරන්නේ කොහොමද කියලා සරල Python code එකකින් බලමු:
import random
# වචන සහ ඒවායේ සම්භාවිතාවන් (probabilities) සහිත සරල context database එකක්
context_database = {
"i love eating": [
{"word": "pizza", "probability": 0.6},
{"word": "sushi", "probability": 0.3},
{"word": "screws", "probability": 0.1} # Temperature එක වැඩි වුණොත් මේක තෝරන්න පුළුවන්
]
}
def generate_next_word(phrase, temperature=0.7):
options = context_database.get(phrase.lower())
if not options:
return "unknown"
if temperature < 0.2:
# Strict mode: වැඩිම probability එක තියෙන වචනය විතරක් ගනී
return max(options, key=lambda x: x["probability"])["word"]
else:
# Probability එක අනුව random වචනයක් තෝරාගනී
words = [o["word"] for o in options]
weights = [o["probability"] for o in options]
return random.choices(words, weights=weights, k=1)[0]
# Run කර බලමු
print(generate_next_word("I love eating", temperature=0.1)) # Output: pizza
අවසාන අදහස
Generative AI වලට ඇත්තටම "හිතන්න" හෝ දේවල් "තේරුම් ගන්න" බැහැ. ඌ කරන්නේ ළඟ තියෙන data අනුව ඊළඟට එන්න ඕනේ වචනය ගණිතමය වශයෙන් තෝරන එක විතරයි. AI එකක් බොරු තොරතුරු කියද්දී (hallucination), ඌ අපිට හිතලා බොරු කියනවා නෙවෙයි, ඌ කරන්නේ ගැලපෙනවා වගේ පේන වචන ටිකක් වැරදි විදිහට එකතු කරන එක විතරයි. ඒ නිසා Generative AI කියන්නේ මුළු internet එකම කියවපු, හැබැයි සමහර වෙලාවට කරුණු හරියටම මතක නැති, ඉතා වේගවත් සහායකයෙක් විතරයි කියලා මතක තියාගන්න.


