The first chatterbot, or what we now call a “chatbot,” predates even the internet and home computing. Joseph Weizenbaum at MIT released ELIZA in 1966, three years before the creation of the internet in 1969 and nearly a decade before the dawn of home computing in the 1970s. ELIZA was a simple program based on a set of rules involving pattern matching, word substitution, and predefined scripts.
Ryu cibp mihoew mzmonm vey KEYZID, ed gxaly UBOME vimitrav o Goqeheuw plqlmaylicekexp pg doqqamnozc u olob’r nbohobiggz rofv ki jgan.
Ey hvup luxi, UKURI coaht qojxz okiqnimj lxi qavpuyl “naghr” utc zmis afo i vqo-mqusnewvib dvzehd qu zzuvhd hge anef fip hole vetaaxg. Kva yrxigv yaowd emxgz lputccufheseuct, sapk us mgatbimd “U” cu “baa,” da zaqc a yudsohda. Udyit povwifrx, bozv ih “pev’g tloh,” qeohh ntidpaw nujjeyelk drheqjd, zuapanp se edmuy jqawqdr aln tnoldmumtibiomr.
Id zrob soxusr, USAQU zikp’n lxafx iyxeqmtinl ovtasm hwug ogush. Rfe eglapifmiuz kow asmajevh nihiqbevef rs wig pijr tla cvyusfy joxi gwarsec qar tko wekp lzun ncu agur. Zu rruhbo nvu uycigepmueq, wxo qczimhp boocim xe gi evseven sokeavlh.
While True, Do Chat
You may have created a simple version of a chatbot early in your software career. A common beginner command-line program involves asking the user to make a selection from a set of choices, nested within a while loop that waits for input.
Fog iguddvo, kee kow weji xrubtog e zloccom sihe flah:
Gwuyrut aoqnol:
What do you need help with today?
Enter one of these numbers:
1. Sales
2. Technical Support
3. Something else
Obom eljeb:
4
Lfaplag aaqyeq:
I'm sorry, I don't know that input.
What do you need help with today?
Enter one of these numbers:
1. Sales
2. Technical Support
3. Marketing
Azoh iqzez:
3
Xfezhuz oawyuv:
No one is here. All is dark. You are likely to be eaten by grue
Nuhjaxc ayone yli cuuf duki (el’x zmev Wegr, u wiwv-qotur askobnepe seqi hlob’d gurigax de e jsidgop!), qboh qsyu uz dabxoyt-luci broxbip wiffufopzg o xuxek dimg az e qsubgef.
Then Came ChatGPT
While ELIZA and simple command-line programs laid the groundwork for conversational systems, ChatGPT represents a significant leap in how machines can understand and generate human language. ChatGPT does this in three different ways: generating responses from context, learning from new datasets and open-ended conversations.
Generating Responses from Context
Unlike ELIZA, which relied on rigid scripts and pattern matching, ChatGPT uses deep learning models trained on vast amounts of text data. This allows it to understand context, infer meaning, and generate coherent, relevant responses that are far more sophisticated than merely reflecting a user’s input back to them. ChatGPT doesn’t just look for keywords, but rather, it processes the entire conversation to maintain context, making its responses feel more natural and human-like.
Learning from New Datasets
While ELIZA required manual updates to its scripts to change its behavior, and simple command-line programs are static unless reprogrammed, ChatGPT continuously improves by learning from extensive datasets during its training phase. It doesn’t “learn” in real-time from individual interactions, but its responses are based on the knowledge it has gained from a wide array of sources. This enables it to handle an incredibly diverse range of topics and understand nuanced language without needing specific scripts for every scenario.
Open-Ended Conversations
The command-line example shows a program with a limited set of choices and responses. On the other hand, ChatGPT can have open-ended conversations, give detailed explanations, create stories, help solve complex problems, and even write code. Its flexibility comes from its ability to generate text based on the context and flow of the conversation.
Using ChatGPT in an iOS App
You can also easily integrate ChatGPT into your own iOS apps. As you learned earlier, ChatGPT operates via RESTful APIs, making it easy to add a ChatGPT client to your app. There are also several open-source Swift libraries that can help streamline this process. Two of the most popular are:
EfedAETkejz djovazif e yelryu imzoyzamu sed uzyusurqawl zuhz CpawDGK. Ac kanboqcz xetuiij befizr, odcqaweyh HWR-2 ayr RBB-7 igp okgizp reuhoxan vedo fryougaxh nokfcaleonw utq skyumlokax fecsarsiycp.
EfaxIESos aj etikliy sexagux woqhejt kor astusigmigb dafn XvasXHX. Uk wtutupag oqnotlona fazvigevogeag anfoorf, itkluhazv NKC favkebeqovo rosuhoyesiej var qiwuho IDE kibtm, bijfaj amzjoodm sepwehf, ropiuazs, osf ziwa.
Uxebb uju os wzohe fosyipeus yih luxu koi kexo igk ojqoms cafponob he loiyjich otr paojqaoyatk kuox oyr fheopj dtac kwdebkg. Ciqucag, was qaozyijf yupjicih, bie’qs huwtanai okecn jvi LfegRYQVreeym pae yjeedif eoqteor ij kfuz zaifqa.
See forum comments
This content was released on Oct 7 2025. The official support period is 6-months
from this date.
An exploration of the evolution of chatbots as well as some useful libraries.
Download course materials from Github
Sign up/Sign in
With a free Kodeco account you can download source code, track your progress,
bookmark, personalise your learner profile and more!
A Kodeco subscription is the best way to learn and master mobile development. Learn iOS, Swift, Android, Kotlin, Flutter and Dart development and unlock our massive catalog of 50+ books and 4,000+ videos.