Ch CLI

GitHub репозиторій проекту

Про

Рік тому я створив Cha, прочитайте мій оригінальний блог про це, мій інструмент CLI на Python для взаємодії з моделями OpenAI. Відтоді я спостерігав, як AI-ландшафт драматично еволюціонує. Нові гравці з’явилися на ринку, пропонуючи переконливі альтернативи OpenAI. Це спонукало мене переосмислити, чим може бути Cha. Результат - Ch, експериментальна реалізація на Go, яка втілює все, що я дізнався про створення інструментів для розробників.

Ch не просто порт Cha. Хоча він все ще на ранніх стадіях, він зосереджується на тому, що найбільше важливо для мене та інших розробників: швидкість, ефективність та підтримка кількох AI платформ. Зберігаючи основну філософію простоти та термінального першого взаємодії, яка зробила Cha корисним, Ch забезпечує вражаюче 2,55x покращення продуктивності в порівнянні з його попередником на Python. Це означає менше часу на очікування та більше часу на вирішення проблем.

Еволюція

AI-ландшафт значно змінився з моменту мого першого випуску Cha. Я спостерігав кілька основних змін, які вплинули на мій підхід до створення Ch:

  • Зростання нових постачальників AI було неймовірним. Компанії, такі як Groq, розширили межі швидкості інференції. Claude від Anthropic продемонстрував вражаючі можливості міркування. DeepSeek та інші представили нові підходи до мовних моделей. Це різноманіття означало, що бути прив’язаним лише до OpenAI вже недостатньо.

  • Швидкість відповіді стала все більш критично важливою. Оскільки AI-інструменти стають частиною нашого щоденного робочого процесу, ці додаткові секунди очікування відповідей накопичуються. Це було одним з моїх основних мотивів для переписування на Go. Приріст продуктивності - це не просто цифри на бенчмарку. Вони перетворюються на помітно більш плавний досвід, коли ви глибоко занурені в сесію кодування.

  • Потреба в гнучкості платформи також зросла. Різні моделі відмінно справляються з різними завданнями, і можливість легко перемикатися між ними є цінною. Я хотів, щоб Ch зробив це безшовно, щоб ви могли зосередитися на своїй роботі, а не на управлінні API-інтерфейсами.

Ключові особливості

Підтримка кількох платформ: Ch працює безперешкодно з OpenAI, Groq, DeepSeek, Anthropic та xAI. Я зробив перемикання між платформами якомога простішим, оскільки вважаю, що наявність варіантів робить інструмент більш цінним.

Швидка продуктивність: Підвищення швидкості на 2,55x в порівнянні з Cha - це не просто маркетинг. Це результат ретельної оптимізації та відмінних характеристик продуктивності Go. Кожна взаємодія відчувається більш чіткою, що має реальне значення, коли ви використовуєте його протягом дня.

Інтерактивні та прямі режими: Іноді вам потрібна швидка відповідь, іноді вам потрібна розширена розмова. Ch природно підтримує обидва робочі процеси. Ви можете швидко ставити запитання або брати участь у детальних технічних обговореннях.

Інтеграція веб-пошуку: Я інтегрував SearXNG з форматом цитування IEEE. Це означає, що коли Ch отримує веб-контент для відповіді на ваші запитання, ви отримуєте належно процитовані, дослідницькі відповіді. Це особливо корисно, коли вам потрібна актуальна інформація або ви хочете перевірити твердження.

Розумне управління файлами: Завантаження файлів у ваш контекст чату - це те, що я постійно використовую, тому я покращив це. Функція багатого вибору робить легким включення саме того, що вам потрібно у вашій розмові.

Професійні інструменти: Чи експортуєте ви розмови для документації, використовуєте свій улюблений текстовий редактор для складних запитів або перемикаєтеся між AI моделями, Ch робить це простим. Це не просто функції, які я вважав би корисними. Це інструменти, які я використовую щодня у своїй роботі.

Управління історією чату: Можливість повернутися до історії розмов врятувала мене безліч разів, коли мені потрібно було посилатися на ранні частини обговорення або експортувати чати для подальшого використання.

Чому Go?

Рішення переписати Cha на Go не було лише про продуктивність. Після року підтримки Cha я мав чітке уявлення про те, що працює, а що можна покращити. Сильна типізація Go виявляла помилки раніше в розробці. Його відмінна підтримка паралелізму зробила обробку кількох API викликів більш плавною. Швидке виконання робило кожну взаємодію більш чутливою.

Але, можливо, найголовніше, Go допоміг мені створити більш надійний та підтримуваний інструмент. Код чистіший, обробка помилок надійніша, а загальна архітектура більш міцна. Ці покращення можуть не бути відразу видимими для користувачів, але вони роблять Ch більш надійним і легшим для розширення новими функціями.

Сила AI-підтримуваної розробки

Те, що справді вразило мене в процесі створення Ch, не лише покращення продуктивності чи нові функції. Це було те, як я його створив. Використовуючи такі інструменти, як Claude Code CLI та Gemini CLI, в поєднанні з Cursor IDE, я зміг розробити цей MVP менш ніж за день. Цей досвід повністю змінив мою перспективу на те, що можливо в розробці програмного забезпечення.

Цей швидкий цикл розробки не полягав у скороченні кутів. Натомість він продемонстрував, як AI-інструменти трансформують спосіб, яким ми можемо підходити до програмних проектів. Те, що могло зайняти тижні планування, кодування та налагодження, було зведено до годин зосередженої розробки. Це не лише про швидше написання коду; це про можливість експериментувати, ітеративно працювати та інновувати на темпі, який раніше був неможливим.

Дивлячись вперед

Хоча Ch наразі реалізує більшість основних функцій Cha, це все ще експериментальний проект. Я в захваті від його потенціалу, але ще є над чим працювати. Покращення продуктивності та підтримка кількох платформ позиціонують Ch для зростання разом з швидко еволюціонуючим AI-ландшафтом.

Я використовую Ch щодня, так само, як і Cha, але тепер з задоволенням, знаючи, що він швидший. Для тих, хто зацікавлений у його випробуванні, ознайомтеся з GitHub репозиторієм проекту, посилання на який наведено на початку цього посту. Процес установки простий, особливо якщо ви знайомі з інструментами Go.

Шлях від Cha до Ch був не лише про переписування інструменту на швидшій мові. Це було про те, щоб взяти все, що я дізнався, створюючи та використовуючи Cha, і створити щось, що краще задовольняє потреби розробників у сучасному AI-ландшафті. Я в захваті від того, як люди використовують Ch і як він може еволюціонувати, щоб задовольнити майбутні потреби.