Ch 커맨드라인 인터페이스

프로젝트의 GitHub 저장소

소개

1년 전, 저는 를 만들었고, 그에 대한 제 원래 블로그 게시물을 읽어보실 수 있습니다. 이 도구는 오픈AI의 모델과 상호작용하기 위한 제 파이썬 CLI 도구였습니다. 그 이후로 AI 환경은 극적으로 변했습니다. 새로운 플레이어들이 시장에 진입하여 오픈AI에 대한 매력적인 대안을 제공했습니다. 이것은 Cha를 재구상하게 만들었습니다. 그 결과는 제가 개발자 도구를 만들며 배운 모든 것을 구현한 실험적인 Go 구현인 치(Ch)입니다.

치(Ch)는 단순히 Cha의 포팅이 아닙니다. 아직 초기 단계이지만, 저와 다른 개발자들에게 가장 중요한 것들—속도, 효율성, 그리고 다양한 AI 플랫폼 지원—에 집중하고 있습니다. Cha를 유용하게 만든 단순성과 터미널 우선 상호작용이라는 핵심 철학을 유지하면서도, 치는 파이썬 이전 버전보다 인상적인 2.55배 성능 향상을 제공합니다. 이는 기다리는 시간이 줄고 실제 문제 해결에 더 많은 시간을 쓸 수 있다는 뜻입니다.

발전 과정

Cha를 처음 공개했을 때와 비교해 AI 환경은 크게 변했습니다. 저는 치를 만들면서 영향을 준 여러 주요 변화를 목격했습니다:

  • 새로운 AI 제공업체의 등장은 놀라웠습니다. 그록과 같은 회사들은 추론 속도의 한계를 밀어붙였습니다. 앤트로픽의 클로드는 인상적인 추론 능력을 보여주었습니다. 딥식 등 다른 회사들은 언어 모델에 대한 새로운 접근법을 가져왔습니다. 이러한 다변화는 단지 오픈AI에 묶여 있는 것이 더 이상 충분하지 않다는 것을 의미했습니다.

  • 응답 속도는 점점 더 중요해졌습니다. AI 도구가 우리의 일상 워크플로의 일부가 되면서, 응답을 기다리는 그 몇 초가 쌓이면 큰 차이를 만듭니다. 이것이 제가 Go로 다시 작성하기로 한 주요 동기 중 하나였습니다. 성능 향상은 단순한 벤치마크 수치가 아닙니다. 코딩 세션에 깊이 빠져 있을 때 체감할 수 있는 훨씬 더 부드러운 경험으로 이어집니다.

  • 플랫폼 유연성의 필요성도 커졌습니다. 모델마다 뛰어난 작업이 다르며, 모델 간을 쉽게 전환할 수 있는 자유는 매우 유용합니다. 저는 치가 이 과정을 원활하게 만들기를 원했습니다. 그래서 API 엔드포인트를 관리하는 데 신경 쓰기보다는 작업에 집중할 수 있도록 했습니다.

주요 기능

멀티 플랫폼 지원: 치는 오픈AI, 그록, 딥식, 앤트로픽, 및 엑스에이아이와 원활하게 작동합니다. 플랫폼 간 전환을 가능한 한 단순하게 만들었습니다. 선택권이 많을수록 도구의 가치가 높아진다고 믿기 때문입니다.

초고속 성능: Cha에 비해 2.55배 향상된 속도는 단순한 마케팅 문구가 아닙니다. 신중한 최적화와 Go의 우수한 성능 특성의 결과입니다. 모든 상호작용이 더 반응성이 좋아져, 하루 종일 사용할 때 실제로 큰 차이를 만듭니다.

대화형 및 직접 모드: 때로는 빠른 답변을 원하고, 때로는 확장된 대화가 필요합니다. 치는 두 작업 흐름을 자연스럽게 지원합니다. 빠른 쿼리를 바로 보내거나 상세한 기술 토론에 참여할 수 있습니다.

웹 검색 통합: 저는 SearXNG를 IEEE 인용 형식과 통합했습니다. 즉, 치가 질문에 답하기 위해 웹 콘텐츠를 가져올 때 적절하게 인용된 연구 수준의 응답을 제공합니다. 최신 정보가 필요하거나 주장을 검증하고자 할 때 특히 유용합니다.

스마트 파일 처리: 채팅 컨텍스트에 파일을 로드하는 기능은 제가 자주 사용하는 기능이라 더 좋게 만들었습니다. 다중 선택 기능으로 대화에 정확히 필요한 파일만 쉽게 포함할 수 있습니다.

전문 도구들: 대화를 문서화하기 위해 내보내기하거나, 복잡한 프롬프트를 위해 선호하는 텍스트 편집기를 사용하거나, AI 모델 간 전환을 하든지 간에 치는 이를 간단하게 만듭니다. 이것들은 제가 ‘있으면 좋겠다’고 생각한 기능뿐만 아니라 제가 매일 제 작업에서 실제로 사용하는 도구들입니다.

채팅 기록 관리: 대화 기록을 뒤로 추적할 수 있는 능력은 토론의 이전 부분을 참조하거나 나중에 참조할 채팅을 내보낼 때 수없이 많은 도움을 주었습니다.

왜 Go인가?

Cha를 Go로 다시 작성하기로 한 결정은 단순히 성능 때문만은 아니었습니다. Cha를 1년간 유지하면서 무엇이 잘 작동했고 무엇을 개선할 수 있을지에 대한 명확한 그림이 생겼습니다. Go의 강한 정적 타입은 개발 초기 단계에서 오류를 더 빨리 잡아주었습니다. 우수한 동시성 지원은 여러 API 호출을 처리할 때 더 원활하게 만들었습니다. 빠른 실행 속도는 모든 상호작용을 더 반응성 있게 느끼게 했습니다.

하지만 아마도 가장 중요한 점은 Go가 더 견고하고 유지보수하기 쉬운 도구를 만드는 데 도움을 주었다는 것입니다. 코드가 더 깔끔하고 에러 처리도 더 신뢰할 수 있으며 전체 아키텍처가 더 견고해졌습니다. 이러한 개선사항은 사용자에게 즉시 보이지 않을 수 있지만, 치를 더 신뢰할 수 있고 새로운 기능으로 확장하기 쉽게 만듭니다.

AI 지원 개발의 힘

치(Ch)를 만들며 저를 진정으로 놀라게 했던 것은 단지 성능 향상이나 새로운 기능만이 아니었습니다. 그것은 어떻게 제가 그것을 만들었는가였습니다. 클로드 코드 CLI제미니 CLI 같은 도구들과 커서 IDE를 결합하여 사용함으로써, 저는 이 MVP를 하루도 채 되지 않는 시간 안에 개발할 수 있었습니다. 이 경험은 소프트웨어 개발에서 무엇이 가능한지에 대한 제 관점을 완전히 바꿔 놓았습니다.

이 빠른 개발 사이클은 지름길을 택한 것이 아니었습니다. 대신 이것은 AI 도구들이 우리가 소프트웨어 프로젝트에 접근하는 방식을 어떻게 변화시키고 있는지를 보여주었습니다. 몇 주가 걸렸을 기획, 코딩, 디버깅의 과정이 몇 시간의 집중 개발로 압축되었습니다. 이는 단지 코드를 더 빠르게 작성하는 문제가 아니라, 이전에는 불가능했던 속도로 실험하고 반복하며 혁신할 수 있게 되었다는 뜻입니다.

앞으로의 방향

치가 현재 Cha의 핵심 기능 대부분을 구현하고 있지만, 여전히 매우 실험적인 프로젝트입니다. 그 가능성이 기대되지만 아직 해야 할 일이 많습니다. 성능 향상과 멀티 플랫폼 지원은 빠르게 진화하는 AI 환경과 함께 치가 성장할 수 있는 위치를 제공합니다.

저는 Cha 때처럼 매일 치를 사용하고 있으며, 이제는 더 빠르다는 만족감도 함께합니다. 사용해보고 싶으신 분들은 이 글 상단에 연결된 프로젝트의 GitHub 저장소를 확인해 보세요. 설치 과정은 특히 Go 도구들에 익숙하다면 간단합니다.

Cha에서 치로의 여정은 단지 더 빠른 언어로 도구를 다시 쓰는 것 이상의 의미가 있었습니다. Cha를 만들고 사용하면서 배운 모든 것을 가져와, 오늘날의 AI 환경에서 개발자의 요구를 더 잘 충족시키는 무언가를 만든 과정이었습니다. 사람들이 치를 어떻게 사용하고 앞으로의 필요를 충족하기 위해 어떻게 진화할지 보는 것이 기대됩니다.