Magmalabs는 Cableready 및 StimulusReflex와 함께 Rails 7에 작성된 GPT를위한 최고의 ChatGpt 스타일 인터페이스를 선보입니다!
Magmachat은 본질적으로 여전히 개념 증명이지만, Magmalabs에서 우리가 회사 Chatgpt 솔루션으로 사용하는 많은 Showstopper 버그가 사내에서 흔들렸습니다.
결국 우리는 더 많은 인증 및 사용자 관리 옵션을 위해 Devise를 통합해야하지만 지금은 Google 계정을 사용하여 로그인해야합니다.
대화는 인간과 봇 간의 채팅 사례입니다. 봇은 Magmachat에서 구성된 의인화 된 디지털 페르소나/자율 에이전트로 채팅 완료 (일명 Chatgpt)를 위해 OpenAi의 API를 사용하여 생명을 불러 일으 킵니다.
기본 봇은 Gerald입니다. 그와 대화하는 것은 chatgpt와 직접 대화하는 것과 같습니다. 그는 특별한 지시가 없습니다. 관리자 인 경우 /admin/bots 으로 가서 특수한 역할 및/또는 성격을 취하는 맞춤형 지시문으로 추가 봇을 만들 수 있습니다.
사용자가 봇과 채팅 할 때 봇은 수동적으로 사용자와 대화에 대해 관찰하고 thoughts 테이블에 추억으로 저장합니다. Marqo가 활성화되면 생각은 벡터로 저장되어 텐서 검색을 사용하여 쿼리 할 수 있습니다. BOTS 내장 프로그래밍의 필수 부분은 인간과 같은 행동을 취하고 자신이 누구인지 기억하는 것입니다. 친절하게 구성된 봇은 종종 당신이 오늘날 어떻게하고 있는지, 이전 대화 주제에 대한 후속 조치를 적극적으로 묻습니다. 활발한 완화는 봇이“언어 모델”면책 조항으로 대화를 쓰는 것을 방지합니다.
채팅하는 동안 갑자기 토큰이 떨어지지 않도록 OpenAi로 전송 된 대화 성적표가 창문화됩니다. 즉, 대화가 길어지면 이전 메시지가 문맥에 포함되지 않습니다. 대화가 중요한 맥락을 잃고 있다는 것을 느끼면 새로운 맥락을 시작하십시오. 봇에는 메모리가 있기 때문에 이전 대화에서 너무 많이 반복 할 필요가 없습니다.
백그라운드 프로세스는 대화에 분석 메타 데이터를 자동으로 추가합니다. 우리는 결국이 프로세스에 구성 옵션을 추가하여 모든 메시지 교환 후에 주문 또는 정기 간격으로 만 실행되도록합니다.
유형 /public 인증되지 않은 방문객이 대화를 이용할 수 있도록합니다.
채팅을위한 텍스트 입력은 최대의 유용성을 위해 단일 라인과 성장 모드 사이에 전환 될 수 있습니다. 유형 /grow 전환하십시오. 성장 모드에서 CMD+Enter는 메시지를 제출합니다 (또는 전송 버튼을 누르십시오.)
당신의 봇은 당신과 이야기 할 수 있습니다. Avatar를 클릭하면 11 개의 실험실 API를 사용하여 메시지 내용을 크게 읽으십시오. ( XI_API_KEY 환경 변수를 설정해야합니다.)
모든 프롬프트는 config/prompts.yml 에 저장되며 계획은 결국 런타임에 편집 가능하게 만드는 것입니다.
사용자 설정 페이지는 i18n Yaml 파일의 항목으로 동적으로 구성됩니다. 이것은 귀엽거나 영리한 것이 아니라 보석 기반 플러그인을 향한 플랫폼을 향해 자신의 사용자를 대면 템플릿을 사용하지 않고도 런타임에 사용자 설정을 동적으로 추가 할 수 있습니다.
GPT 자체가 뒷받침하는 동적 텍스트 도우미는 사용자 인터페이스에서 정적 텍스트를 생성하는 데 사용됩니다. 즉, 사용자 설정에서 선호하는 언어를 변경하여 앱을 즉시 국제화 할 수 있습니다. 관리자는 FreeForm 텍스트를 입력 할 수 있으며 일반 사용자는 사전 승인 된 선택 옵션으로 드롭 다운을받습니다.
우리는 Magmachat을 GPT 지원 앱을 구축하기위한 세계 최고의 플랫폼으로 만들기 위해 앞으로 몇 달 동안 빠른 속도로 기능 (및 외부 코드 기고자! 힌트, 힌트)을 계속 추가 할 계획입니다.
우리가 생각하는 멋진 기능은 다음과 같습니다.
루비 3.2.1
Docker가 필요합니다
docker-compose.yml.example 파일을 자신의 구성을위한 안내서로 사용하십시오.
환경 변수를 구성합니다
cp .env.example .env.local앱을 발사하십시오
docker-compose up --build OPENAI_ACCESS_TOKEN 환경 변수 세트가 있는지 확인하십시오. (개발자, 프로젝트의 루트에 .env.local 파일을 사용하십시오.)
현재 지원되는 유일한 인증 방법은 Google Oauth입니다. GOOGLE_CLIENT_ID 및 GOOGLE_CLIENT_SECRET 환경 변수 세트가 필요합니다.
marqo를 사용하는 경우 MARQO_URL 환경 변수를 설정하십시오. 그렇지 않으면 MemoryAnnotator 실행되지 않습니다.
관리 권한은 단순히 User 의 admin 부울 속성으로 부여됩니다. 현재 관리자 UI가 없으므로 사용자 관리 권한을 부여하려면 콘솔을 통해 수행하십시오.
관리 권한이 있으면 자동으로 생성 된 기본 GPT 조수 인 Gerald를 넘어서 추가 봇을 만들기 위해 /admin/bots 에 액세스 할 수 있습니다. 아드먼이 아닌 사용자를 위해 새 채팅 화면에 표시하려면 봇을 게시해야합니다. 드래프트 봇은 관리자에게 표시되므로 출판 전에 테스트하고 개선 할 수 있습니다.
채팅 입력에서 유형 /디버그를 입력하여 플랫폼에서 봇에 인라인 지침을 포함하는 숨겨진 메시지의 가시성을 전환합니다.
우리는 적극적으로 프로젝트에 기고자를 찾고 있으며,이 강령에는 독립적 인 연구 및/또는 기능 향상을위한 기회를 제시하는 Todos가 흩어져 있습니다.
당사는 풀 요청을 제출함으로써 Magmachat 프로젝트에 제출 된 변경 사항에 대한 권리 또는 청구를 거부하고 Obie Fernandez & Wearemagma Group, Inc.에 대한 이러한 변경 사항의 저작권을 할당한다고 조언해야합니다. 이러한 권리를 양도 할 수 없거나 (고용주와의 고용 계약이 그러한 조치를 금지 할 수 있으므로), 당사는 요청을 제출하는 것을 권고합니다. 대신, 친절하게 문제를 열고 다른 당사자가 수행 할 임무를 남겨 두십시오. 이것은 예외적 인 사건이 아니라 그러한 프로젝트의 일반적인 관행입니다. 이 섹션은 본질적으로 "PR을 우리에게 제출하면 해당 코드가 우리의 재산이됩니다"라는 법적 표현입니다. 실제로, 이것은 대부분의 사람들이 시간의 99.9%가 일어나겠다고 생각하며, 프로젝트에 기여하지 않기를 바랍니다.