
9Router Model Connector란?
9Router Model Connector는 Visual Studio Code와 GitHub Copilot Chat을 9Router AI 게이트웨이와 통합합니다. 가장 큰 장점은 다시 로드할 필요 없이 모델을 전환할 수 있다는 점입니다. 초기 설정 후에는 JSON 파일을 편집하거나 VS Code를 다시 시작하거나 현재 채팅 세션을 종료하지 않고도 한 번의 클릭으로 다른 AI 모델을 활성화할 수 있습니다.
이 프로젝트는 OpenAI, Anthropic, Google Gemini, DeepSeek, Groq, OpenRouter를 포함해 40개가 넘는 AI 제공업체를 통해 라우팅되는 모델을 지원합니다. 프로젝트에서 언급하는 예시로는 Claude 3.5 Sonnet, GPT-4o, Gemini 1.5 Pro, DeepSeek V3 및 R1, Llama 3 등이 있습니다.
주요 기능
- 다시 로드하지 않는 전환: VS Code와 현재 채팅 세션을 계속 열어 둔 상태에서 활성 모델을 즉시 변경할 수 있습니다.
- 웹 대시보드: 사용 가능한 제공업체를 찾아보고 필터링한 다음 모델을 시각적으로 활성화할 수 있습니다.
- VS Code 상태 표시줄 통합: 편집기를 벗어나지 않고 모델을 선택할 수 있습니다.
- 모델 비교 및 벤치마킹: 프롬프트를 나란히 테스트하고 응답 지연 시간을 비교할 수 있습니다.
- 동적 로컬 프록시: 활성 모델을 자동으로 삽입하고 인증 헤더를 적용하며 Server-Sent Events 스트리밍 응답을 중계합니다.
- 폭넓은 제공업체 호환성: 9Router 게이트웨이를 통해 사용할 수 있는 제공업체에 연결합니다.
연결 작동 방식
이 통합은 세 개의 로컬 서비스 또는 엔드포인트를 사용합니다.
20128: 9Router 핵심 게이트웨이 및 로드 밸런서입니다.20129: 요청에 현재 활성 모델을 삽입하는 확장 프로그램의 로컬 프록시입니다.5500: 모델을 선택하고 비교하는 데 사용하는 웹 대시보드입니다.
대시보드나 상태 표시줄에서 모델을 선택하면 프록시가 해당 모델을 활성 모델로 기록합니다. GitHub Copilot Chat은 고정된 9Router via Proxy 항목을 사용해 다음 완성 요청을 로컬 프록시로 보냅니다. 프록시는 활성 모델을 포함하도록 요청 페이로드를 다시 작성하고 필요한 API 키를 추가한 다음 요청을 9Router 핵심 게이트웨이로 전달합니다.
9Router는 요청을 적절한 AI 제공업체로 라우팅합니다. 응답은 SSE 토큰 스트림으로 게이트웨이와 프록시를 거쳐 돌아오므로 Copilot Chat에서 답변을 실시간으로 표시할 수 있습니다.
Copilot Chat에서 9Router via Proxy를 한 번만 선택하면 됩니다. 이후 모델 변경은 프록시 계층에서 처리됩니다.
설치
옵션 1: Windows에서 자동 설정
프로젝트 디렉터리에서 명령 프롬프트 또는 터미널을 열고 설정 스크립트를 실행합니다.
scripts\setup.batnpm 설정 명령을 사용할 수도 있습니다.
npm run setup옵션 2: Linux 또는 macOS에서 자동 설정
셸 스크립트에 실행 권한을 부여한 후 실행합니다.
chmod +x scripts/setup.sh
./scripts/setup.sh옵션 3: 수동 설치
먼저 9Router 핵심 게이트웨이를 전역으로 설치합니다.
npm install -g 9router커넥터 저장소를 복제하고 해당 디렉터리로 이동합니다.
git clone https://github.com/yudaprasetya007/routeVSCODE.git
cd routeVSCODE패키징된 VS Code 확장 프로그램을 설치합니다. 저장소의 releases 디렉터리에는 버전 2.5.0이 포함되어 있습니다.
code --install-extension releases/routevscode.model-connector-2.5.0.vsix --force웹 대시보드를 시작합니다.
npm start실행되면 브라우저에서 http://localhost:5500을 엽니다.
초기 설정
1. 9Router 게이트웨이 시작
전용 터미널에서 9Router를 실행합니다.
9routerhttp://localhost:20128/dashboard를 열고 9Router API 키를 확인합니다. 커넥터를 사용하는 동안 이 터미널을 계속 실행해 두세요.
2. 커넥터 대시보드 시작
복제한 저장소에서 다음을 실행합니다.
npm start커넥터 대시보드는 http://localhost:5500에서 사용할 수 있게 됩니다.
3. API 키 및 기본 URL 설정
Ctrl+Shift+P를 사용해 VS Code 명령 팔레트를 엽니다. macOS에서는Cmd+Shift+P를 사용합니다.9Router: Set API Key & Base URL을 선택합니다.- 기본 URL로
http://localhost:20128/v1을 입력합니다. - 9Router 대시보드에서 확인한 API 키를 붙여 넣습니다.
4. Copilot Chat에서 프록시 선택
Ctrl+Alt+I를 사용해 GitHub Copilot Chat을 엽니다.- 채팅 인터페이스 하단에서 모델 선택기를 엽니다.
9Router via Proxy를 선택합니다.
이 과정은 Copilot 모델을 한 번만 선택하는 단계입니다. 9Router를 통해 여러 모델을 전환할 때는 Copilot을 이 프록시 항목으로 설정해 두세요.
기본 사용법
웹 대시보드에서 모델 전환
9router프로세스와 커넥터 대시보드가 모두 실행 중인지 확인합니다.- http://localhost:5500을 엽니다.
- 사용하려는 모델을 찾아 활성화합니다.
- Copilot Chat에서 새 프롬프트를 보냅니다.
로컬 프록시는 새로 선택한 모델을 다음 요청에 삽입합니다. VS Code를 다시 로드할 필요가 없습니다.
VS Code 상태 표시줄에서 모델 전환
오른쪽 하단 상태 표시줄의 9Router 모델 표시기를 클릭합니다. 목록에서 모델을 선택한 다음 평소처럼 Copilot Chat을 계속 사용합니다.
명령 팔레트를 통해 전환
명령 팔레트를 열고 다음 명령을 실행합니다.
9Router: Pilih Model AI활성 AI 모델을 선택할 수 있는 빠른 선택 메뉴를 엽니다.
유용한 VS Code 명령
9Router: Pilih Model AI: 빠른 모델 선택기를 엽니다.9Router: Status & Info: 연결 상태, 프록시 포트 및 활성 모델을 표시합니다.9Router: Set API Key & Base URL: 9Router 엔드포인트와 인증 정보를 업데이트합니다.9Router: Sync Semua Model ke Copilot:chatLanguageModels.json의 9Router 항목을 다시 작성합니다.9Router: Buka Dashboard Web: 브라우저에서 로컬 대시보드를 엽니다.9Router: Tambah Model Manual: 사용자 지정 모델 ID를 수동으로 등록합니다.9Router: Hapus Semua Entry 9Router: VS Code 구성에서 9Router 프록시 항목을 제거합니다.
고급 팁
선택하기 전에 모델 비교
대시보드의 실시간 모델 비교 및 벤치마킹 기능을 사용해 프롬프트를 제출하고 응답을 나란히 비교하세요. 속도가 중요할 때 지연 시간 측정값을 활용하면 모델 선택에 도움이 됩니다.
사용자 지정 모델 ID 추가
필요한 모델이 목록에 없으면 명령 팔레트를 열고 9Router: Tambah Model Manual을 실행하세요. 구성된 9Router 공급자가 요구하는 모델 ID를 입력합니다. 사용 가능 여부는 여전히 9Router 게이트웨이를 통해 액세스할 수 있는 공급자와 모델에 따라 달라집니다.
활성 연결 확인
Copilot 자체를 진단하기 전에 9Router: Status & Info를 실행하세요. 활성 모델, 연결 상태 및 로컬 프록시 포트를 확인합니다. 이를 통해 프록시 문제와 게이트웨이 또는 공급자 문제를 구분할 수 있습니다.
프록시 선택 상태 유지
Copilot의 모델 선택기에서 개별 업스트림 모델을 반복해서 선택하지 마세요. 9Router via Proxy를 선택한 상태로 유지하고 대시보드, 상태 표시줄 또는 빠른 선택 명령을 통해 업스트림 모델을 변경하세요. 이렇게 하면 에디터를 다시 로드하지 않는 작업 흐름을 유지할 수 있습니다.
서비스를 별도 터미널에서 실행
한 터미널에서는 9router를 실행하고 다른 터미널에서는 npm start를 실행하세요. 이렇게 하면 서비스 로그를 더 쉽게 확인할 수 있고 대시보드를 다시 시작할 때 핵심 게이트웨이를 실수로 중지하는 일을 방지할 수 있습니다.
문제 해결
포트 20129가 이미 사용 중인 경우
확장 프로그램의 동적 프록시는 포트 20129를 사용합니다. 더 이상 필요하지 않은 VS Code 인스턴스를 닫거나 해당 포트를 점유한 다른 프로세스를 중지한 다음 커넥터를 다시 시작하세요.
프록시 모델이 표시되지 않는 경우
확장 프로그램을 처음 설치한 후 명령 팔레트를 열고 Developer: Reload Window를 실행하세요. 그런 다음 Copilot Chat 모델 선택기로 돌아가 9Router via Proxy를 찾습니다.
9Router가 응답하지 않는 경우
별도 터미널에서 9router가 계속 실행 중인지 확인하세요. 또한 기본 URL이 http://localhost:20128/v1인지, 구성된 API 키가 로컬 9Router 대시보드에서 가져온 것인지 확인합니다.
구성 재설정 또는 재동기화
모델 구성을 다시 생성해야 할 때는 9Router: Sync Semua Model ke Copilot을 사용하세요. 완전히 초기화하려면 9Router: Hapus Semua Entry 9Router를 실행한 후 커넥터를 다시 구성합니다.
추가 진단은 저장소의 문제 해결 문서를 참조하세요. 프로젝트에서는 별도의 아키텍처 및 설정 가이드도 제공합니다.
결론
9Router Model Connector는 GitHub Copilot Chat과 9Router 게이트웨이 사이에 동적 프록시를 배치하여 모델 선택을 Copilot의 고정 구성과 분리합니다. API 키, 기본 URL 및 9Router via Proxy 항목을 구성하면 에디터를 다시 로드하지 않고 대시보드나 VS Code 상태 표시줄에서 지원되는 모델을 전환할 수 있습니다. 이 프로젝트는 MIT 라이선스로 배포됩니다.
