Ch CLI
Kuhusu
Mwaka mmoja uliopita, niliunda Cha, soma chapisho langu la awali la blogu kuhusu hilo, chombo changu cha CLI kilichoandikwa kwa Python kwa kuingiliana na mifano ya OpenAI. Tangu wakati huo, nimeangalia mandhari ya AI yakibadilika kwa kiasi kikubwa. Wachezaji wapya wameingia sokoni, wakitoa mbadala zenye kuvutia kwa OpenAI. Hii ilinifanya kuibadilisha tena Cha ni kiasi gani. Matokeo ni Ch, utekelezaji wa majaribio kwa Go unaoakisi yote niliyoyajifunza kuhusu kujenga zana za watengenezaji.
Ch si tu port ya Cha. Wakati bado iko katika hatua zake za mwanzo, inalenga kile ambacho ni muhimu kwangu na kwa watengenezaji wengine: kasi, ufanisi, na msaada kwa majukwaa mengi ya AI. Wakati ikidumisha falsafa ya msingi ya urahisi na mwingiliano wa kwanza kwa terminal ulioufanya Cha kuwa wenye manufaa, Ch inatoa kuboreshwa kwa utendaji kwa kiasi cha 2.55x ikilinganishwa na toleo lake la Python. Hii inamaanisha muda mdogo wa kusubiri na muda zaidi wa kutatua matatizo kwa kweli.
Mageuzi
Mandhari ya AI yamebadilika kwa kiasi kikubwa tangu nilipotangaza Cha kwa mara ya kwanza. Nimeona mabadiliko kadhaa makubwa ambayo yaliathiri jinsi nilivyoenda kujenga Ch:
-
Kuibuka kwa watoa huduma wapya wa AI kumekuwa kushangaza. Makampuni kama Groq yamepitisha mipaka ya kasi ya uchambuzi (inference). Claude wa Anthropic ameonyesha uwezo wa kushangaza katika uelewa wa sababu. DeepSeek na wengine wameleta mbinu mpya kwa modeli za lugha. Utofauti huu ulimaanisha kuwa kuwa tegemezi tu kwa OpenAI hakukutosha tena.
-
Kasi ya majibu imekuwa muhimu zaidi zaidi. Wakati zana za AI zinapoingia kama sehemu ya mtiririko wetu wa kazi za kila siku, sekunde zile za kusubiri majibu zinaongezeka. Hii ilikuwa moja ya motisha zangu kuu za kuandika tena kwa Go. Faida za utendaji si nambari tu kwenye benchmark. Zinatafsiriwa kuwa uzoefu laini zaidi unaoonekana unapokuwa umeingia sana kwenye kikao cha uandishi wa programu.
-
Ukuaji wa hitaji la unyumbufu wa jukwaa pia umeongezeka. Modeli tofauti zinafaa kwa kazi tofauti, na kuwa na uhuru wa kubadilisha kati yao kwa urahisi ni muhimu. Nilitaka Ch ifanye hili kwa upole, ili uweze kuzingatia kazi yako badala ya kusimamia vituo vya API.
Vipengele Vikuu
Msaada wa majukwaa mengi: Ch inafanya kazi kwa urahisi na OpenAI, Groq, DeepSeek, Anthropic, na xAI. Nimefanya kubadilisha kati ya majukwaa iwe rahisi kadri iwezekanavyo kwa sababu ninaamini kuwa kuwa na chaguzi kunafanya chombo kuwa na thamani zaidi.
Utendaji wa Kasi Sana: Kuboresha kwa kasi kwa 2.55x ikilinganishwa na Cha si tu masoko. Ni matokeo ya uboreshaji wa tahadhari na sifa za utendaji za Go. Kila mwingiliano unahisi kuwa wa haraka zaidi, jambo ambalo linafanya tofauti halisi unapoutumia siku nzima.
Njia za Mwingiliano & Moja kwa Moja: Wakati mwingine unahitaji jibu la haraka, wakati mwingine unahitaji mazungumzo yaliyopanuliwa. Ch inaunga mkono mitiririko yote kwa njia ya asili. Unaweza kutuma maswali ya haraka au kushiriki katika majadiliano ya kina ya kiufundi.
Uunganishaji wa Utafutaji Mtandaoni: Nimeunganisha SearXNG na muundo wa marejeo wa IEEE. Hii inamaanisha wakati Ch inachukua yaliyomo mtandaoni kujibu maswali yako, unapata majibu yaliyojadiliwa kwa usahihi na ya kiwango cha utafiti. Ni maalum ikiwa unahitaji habari za hivi punde au unataka kuthibitisha madai.
Usimamizi Mwerevu wa Faili: Kupakia faili kwenye muktadha wa mazungumzo yako ni jambo ninayotumilia mara kwa mara, kwa hivyo nilifanya kuwa bora. Uwezo wa kuchagua faili nyingi hufanya iwe rahisi kujumuisha hasa kile unachohitaji katika mazungumzo yako.
Zana za Kitaalamu: Iwe unapeleka mazungumzo kwa ajili ya nyaraka, ukitumia mhariri wako wa maandishi unayependelea kwa maelekezo magumu, au kubadilisha kati ya modeli za AI, Ch inafanya iwe rahisi. Hizi si tu vipengele nilivyodhani vingekuwa vizuri. Ni zana ninazotumia kila siku katika kazi yangu mwenyewe.
Usimamizi wa Historia ya Chat: Kuwa na uwezo wa kurudi nyuma kupitia historia ya mazungumzo kimenikomboa mara nyingi nilipohitaji kurejea sehemu za awali za majadiliano au kuuza mazungumzo kwa kumbukumbu ya baadaye.
Kwa Nini Go?
Uamuzi wa kuandika tena Cha kwa Go haukuwa kuhusu utendaji pekee. Baada ya mwaka mmoja wa kutunza Cha, nilikuwa na picha wazi ya kile kilichofanya kazi na kile ambacho kinaweza kuwa bora. Uainishaji mkali wa Go ulikamata makosa mapema katika maendeleo. Msaada wake bora wa ushirikiano (concurrency) ulifanya kushughulikia miito mingi ya API kuwa laini zaidi. Utekelezaji wa haraka ulifanya kila mwingiliano uonekane kuwa wa haraka zaidi.
Lakini labda muhimu zaidi, Go ilinisaidia kujenga chombo imara zaidi na rahisi kutunza. Msimbo ni safi zaidi, usimamizi wa makosa ni wa kuaminika zaidi, na usanifu kwa ujumla ni imara zaidi. Maboresho haya huenda hayajaonekana mara moja kwa watumiaji, lakini hufanya Ch kuwa ya kuaminika zaidi na rahisi kuongeza vipengele vipya.
Nguvu ya Maendeleo Yanayosaidiwa na AI
Kilichonishangaza kweli kuhusu kujenga Ch hakikuwa tu maboresho ya utendaji au vipengele vipya. Ilikuwa jinsi nilivyoiunda. Kutumia zana kama Claude Code CLI na Gemini CLI, pamoja na Cursor IDE, niliweza kuendeleza MVP hii ndani ya chini ya siku moja. Uzoefu huu ulibadilisha kabisa mtazamo wangu juu ya kile kinachowezekana katika maendeleo ya programu.
Mzunguko huu wa maendeleo wa haraka haukuwa juu ya kukata pembe. Badala yake, ulionyesha jinsi zana za AI zinabadilisha jinsi tunavyoweza kukabiliana na miradi ya programu. Kile kingeweza kuchukua wiki za upangaji, uandishi wa programu, na kusahihisha kilizimwa ndani ya masaa ya ukuzaji yenye mwelekeo. Hii sio tu kuhusu kuandika msimbo haraka zaidi; ni kuhusu kuwa na uwezo wa kutekeleza majaribio, kufanya marekebisho, na kuundua kwa kasi ambayo haikuwezekana hapo awali.
Kuangalia Mbele
Wakati Ch kwa sasa inaitekeleza sehemu kubwa ya vipengele vya msingi vya Cha, bado ni mradi wa majaribio. Ninafurahia uwezo wake, lakini bado kuna kazi ya kufanywa. Maboresho ya utendaji na msaada wa majukwaa mengi yanaweka Ch kukua sambamba na mandhari ya AI inayobadilika kwa haraka.
Natumia Ch kila siku, kama nilivyofanya na Cha, lakini sasa kwa kuridhika kwa kujua kuwa ni haraka. Kwa wale wanaopenda kuijaribu, angalia hazina ya GitHub ya mradi iliyounganishwa juu ya chapisho hili. Mchakato wa usakinishaji ni rahisi, hasa ikiwa umezoea zana za Go.
Safari kutoka Cha hadi Ch imekuwa zaidi ya kuandika tena chombo kwa lugha ya kasi zaidi. Imekuwa juu ya kuchukua kila nilichojifunza kwa kujenga na kutumia Cha, na kuunda kitu kinachomhudumia mwombaji wa watengenezaji vyema katika mandhari ya AI ya leo. Nina hamu kuona jinsi watu wataitumia Ch na jinsi inaweza kuendelea kukua ili kukidhi mahitaji ya siku za usoni.