GPT-4 또는 Code Llama/Llama 2를 기반으로 민감한 데이터를 위한 AI 코드 해석기입니다.
Incognito Pilot은 LLM(대형 언어 모델)과 Python 인터프리터를 결합하여 코드를 실행하고 작업을 실행할 수 있습니다. ChatGPT 코드 해석기 와 유사하지만 해석기가 로컬에서 실행되며 Code Llama / Llama 2 와 같은 오픈 소스 모델을 사용할 수 있습니다.
Incognito Pilot을 사용하면 중요한 데이터 를 클라우드에 업로드하지 않고도 작업할 수 있습니다. 로컬 LLM(예: Llama 2) 또는 API(예: GPT-4)를 사용합니다. 후자의 경우 UI에 로컬 데이터를 원격 서비스와 분리하는 승인 메커니즘이 있습니다.
시크릿 파일럿을 사용하면 다음을 수행할 수 있습니다.
그리고 훨씬 더!
비디오는 GPT-4를 사용한 시크릿 파일럿을 보여줍니다. 대화 및 승인된 코드 결과가 OpenAI의 API로 전송되는 동안 데이터는 컴퓨터에 로컬로 보관됩니다 . 인터프리터는 로컬에서도 실행되며 바로 그곳에서 데이터를 처리합니다. 그리고 더 나아가 Code Llama / Llama 2를 사용하여 컴퓨터에서 모든 것을 실행할 수 있습니다.
이 섹션에서는 OpenAI의 API를 통해 GPT 모델을 사용하여 Incognito Pilot을 설치하는 방법을 보여줍니다. 을 위한
다음 단계를 따르세요.
docker run -i -t
-p 3030:80
-e OPENAI_API_KEY= " sk-your-api-key "
-e ALLOWED_HOSTS= " localhost:3030 "
-v /home/user/ipilot:/mnt/data
silvanmelchior/incognito-pilot:latest-slim
이제 콘솔에 URL이 표시됩니다. 그것을 열면 Incognito Pilot 인터페이스가 보일 것입니다.
신용 카드를 추가하지 않고도 OpenAI의 무료 평가판 크레딧으로 Incognito Pilot을 실행할 수도 있습니다. 그러나 현재 GPT-4는 포함되어 있지 않으므로 아래에서 모델을 GPT-3.5로 변경하는 방법을 참조하세요.
시크릿 파일럿 인터페이스에는 모델과 상호 작용할 수 있는 채팅 인터페이스가 표시됩니다. 한번 시험해 보자!
이제 자신의 작업에 Incognito Pilot을 사용할 준비가 되었습니다. 기억해두세요:
한 가지 더: 방금 사용한 버전에는 Python 인터프리터와 함께 제공되는 패키지가 거의 없습니다. 즉, 이미지나 Excel 파일을 읽는 것과 같은 작업이 작동하지 않습니다. 이를 변경하려면 콘솔로 돌아가서 Ctrl-C를 눌러 컨테이너를 중지하세요. 이제 명령을 다시 실행하되 이미지에서 -slim
접미사를 제거하십시오. 이렇게 하면 많은 패키지가 포함된 훨씬 더 큰 버전이 다운로드됩니다.
기본 모델(GPT-4)이 아닌 다른 모델을 사용하려면 환경 변수 LLM
설정하세요. OpenAI의 GPT 모델에는 gpt:
접두사가 있으므로 예를 들어 GPT-3.5(원래 ChatGPT)를 사용하려면 docker run 명령에 다음을 추가합니다.
-e LLM= " gpt-openai:gpt-3.5-turbo "
GPT-4는 GPT-3.5보다 통역사 설정에서 훨씬 더 좋습니다.
3030이 아닌 다른 포트에서 UI를 제공하려면 내부 포트 80을 다른 포트(예: 8080)에 노출할 수 있습니다. 이 경우 허용되는 호스트 변수도 변경해야 합니다.
docker run -i -t
-p 8080:80
-e ALLOWED_HOSTS= " localhost:8080 "
...
silvanmelchior/incognito-pilot
기본적으로 사용자가 여는 URL의 일부인 인증 토큰은 시작 시 무작위로 생성됩니다. 즉, 컨테이너를 다시 시작할 때마다 URL을 다시 복사해야 합니다. 이를 방지하려면 docker run 명령에 다음을 추가하여 토큰을 특정 값으로 수정할 수도 있습니다.
-e AUTH_TOKEN= " some-secret-token "
새 토큰으로 URL을 열면 브라우저가 이를 기억합니다. 따라서 이제부터는 URL에 토큰을 추가할 필요 없이 http://localhost:3030만 열면 Incognito Pilot 에 액세스할 수 있습니다.
기본적으로 Python 인터프리터는 30초 후에 중지됩니다. 이를 변경하려면 환경 변수 INTERPRETER_TIMEOUT
설정하십시오. 예를 들어 2분 동안 docker run 명령에 다음을 추가합니다.
-e INTERPRETER_TIMEOUT= " 120 "
시작 시 docker /를 사용하여 Incognito Pilot을 자동으로 시작하려면 실행 명령에서 -i -t
를 제거하고 다음을 추가합니다.
--restart always
UI URL 북마크와 함께 필요할 때마다 시크릿 파일럿을 손쉽게 사용할 수 있습니다. 또는 docker-compose를 사용할 수도 있습니다.
정식(비슬림) 버전의 사전 설치된 패키지가 마음에 들지 않습니까? 인터프리터에 더 많은 Python(또는 Debian) 패키지를 추가하고 싶으십니까?
Incognito Pilot을 사용하면 자체 종속성을 쉽게 컨테이너화할 수 있습니다. 이렇게 하려면 다음과 같이 Dockerfile을 만듭니다.
FROM silvanmelchior/incognito-pilot:latest-slim
SHELL [ "/bin/bash" , "-c" ]
# uncomment the following line, if you want to install more packages
# RUN apt update && apt install -y some-package
WORKDIR /opt/app
COPY requirements.txt .
RUN source venv_interpreter/bin/activate &&
pip3 install -r requirements.txt
종속성을 요구 사항.txt 파일에 넣고 다음 명령을 실행합니다.
docker build --tag incognito-pilot-custom .
그런 다음 컨테이너를 다음과 같이 실행합니다.
docker run -i -t
...
incognito-pilot-custom
아니요, 한계가 있습니다. 이 경우 개인 정보 보호와 기능 간의 균형은 쉽지 않습니다. 이미지와 같은 경우 편집하기 위해 이미지의 내용을 알 필요가 없기 때문에 ChatGPT 코드 해석기만큼 강력합니다. 그러나 스프레드시트와 같은 경우 ChatGPT가 콘텐츠를 볼 수 없으면 예를 들어 헤더의 데이터 형식을 추측해야 하며 이는 잘못될 수 있습니다.
그러나 특정 측면에서는 ChatGPT 코드 인터프리터보다 훨씬 더 좋습니다. 인터프리터는 인터넷에 액세스할 수 있으므로 이전에는 불가능했던 여러 가지 새로운 작업을 수행할 수 있습니다. 또한 매우 강력한 머신을 포함하여 모든 머신에서 인터프리터를 실행할 수 있으므로 ChatGPT 코드 인터프리터를 사용하는 것보다 훨씬 더 큰 작업을 해결할 수 있습니다.
물론 이렇게 할 수도 있습니다. 그러나 Incognito Pilot을 사용하면 다음과 같은 몇 가지 장점이 있습니다.
귀하가 입력하는 내용과 귀하가 승인하는 모든 코드 결과는 클라우드 API로 전송된다는 점에서 실제로 비공개가 아닙니다. 그러나 귀하의 데이터는 로컬에 유지됩니다. 인터프리터는 로컬에서도 실행되어 데이터가 있는 곳에서 바로 처리됩니다. 어떤 경우에는 데이터에 대한 정보(예: 구조의 파일 이름)를 모델에 알려야 하지만 일반적으로 이는 실제 데이터가 아니라 UI에서 적극적으로 승인하는 메타데이터입니다. 실행의 모든 단계에서 무언가가 API로 전송되는 것을 거부할 수 있습니다.
Incognito Pilot 에 기여하고 싶으십니까? 아니면 도커 없이 그냥 설치하는 건가요? 기여 지침 및 지침을 확인하세요.