프로필
프로필은 AI 모델의 저장된 구성입니다. 각 프로필은 제공업체, 모델, 시스템 프롬프트, 온도, 페르소나 등을 포함한 완전한 설정을 저장하며, 즉시 전환할 수 있습니다. 프로필은 또한 councils의 구성 요소입니다.
개별 프로필 vs Councils
AISCouncil는 두 가지 유형의 프로필을 구분합니다:
| 유형 | 멤버 | 용도 |
|---|---|---|
| 개별 프로필 | 1개 모델 | 표준 단일 모델 채팅 |
| Council | 2개 이상 모델 | 다중 모델 심의 (LLM Council 참조) |
하나의 멤버가 있는 프로필은 개별 프로필입니다. 두 번째 멤버를 추가하면 자동으로 council이 됩니다. 플랫폼은 members.length >= 2를 기반으로 이것을 감지합니다.
프로필 만들기
프로필을 만드는 여러 가지 방법이 있습니다:
1. 설정 마법사 (새 사용자)
기존 프로필 없이 AISCouncil를 처음 열면 마법사가 첫 번째 프로필을 만드는 과정을 안내합니다:
- 단일 프로필 경로: 모델 선택, API 키 연결, 이름 및 아이콘 설정
- 클러스터 경로: 여러 모델을 선택하여 council 생성
2. 새 봇 버튼
왼쪽 사이드바에서 + 버튼 또는 새 채팅을 클릭하여 새 봇을 만듭니다. 오른쪽 패널에서 구성하면 자동으로 프로필로 저장됩니다.
3. JSON에서 가져오기
JSON 파일에서 프로필 가져오기:
- 설정 > 프로필 열기
- 가져오기 버튼 클릭
- 하나 이상의 프로필이 포함된
.json파일 선택
가져오기 형식은 단일 프로필 객체 또는 프로필 배열을 허용합니다. 기존 프로필과의 충돌을 피하기 위해 항상 새 ID가 할당됩니다.
프로필 필드
각 프로필은 다음 구성을 저장합니다:
핵심 설정
| 필드 | 설명 | 기본값 |
|---|---|---|
| 이름 | 프로필의 표시 이름 | "Untitled" |
| 제공업체 | AI 제공업체 (anthropic, openai, xai, gemini, openrouter, ollama) | anthropic |
| 모델 | 특정 모델 ID | -- |
| 시스템 프롬프트 | 봇의 동작을 정의하는 지침 | 비어 있음 |
| 온도 | 무작위성 제어 (0 = 결정론적, 2 = 창의적) | 0.7 |
| 최대 토큰 | 응답당 최대 출력 길이 | 4096 |
페르소나 설정
| 필드 | 설명 |
|---|---|
| 아이콘 | 봇의 이름과 응답 옆에 표시되는 이모지 또는 문자 |
| 설명 | 이 봇이 무엇을 하는지에 대한 짧은 설명 |
| 색상 | 이 봇의 채팅에서 사용자 메시지 버블의 강조 색상 |
고급 설정
| 필드 | 설명 | 기본값 |
|---|---|---|
| Top P | 핵 샘플링 임계값 | 1.0 |
| 빈도 페널티 | 토큰 반복 페널티 | 0 |
| 존재 페널티 | 주제 다양성 장려 | 0 |
| 정지 시퀀스 | 생성이 중지되는 쉼표로 구분된 토큰 | 비어 있음 |
| 응답 형식 | 텍스트 또는 JSON 출력 모드 | text |
| 추론 노력 | 사고/추론 수준 (Thinking 참조) | 기본값 |
| 시드 | 재현 가능한 출력을 위한 고정 시드 | 없음 |
채팅 설정
| 필드 | 설명 | 기본값 |
|---|---|---|
| 컨텍스트 제한 | 요청당 전송되는 최대 메시지 | 무제한 |
| 스트리밍 | 실시간 토큰 스트리밍 | 켜짐 |
| 자동 제목 | 첫 번째 메시지에서 채팅 제목 자동 설정 | 꺼짐 |
| 마크다운 렌더링 | 응답을 마크다운으로 렌더링 | 켜짐 |
| 토큰 수 표시 | 토큰 사용량 표시 | 꺼짐 |
봇별 API 키
각 프로필은 해당 제공업체의 전역 키를 재정의하는 자체 API 키를 저장할 수 있습니다. 이것은 동일한 제공업체에 대해 여러 키가 있을 때(예: 다른 결제 계정) 또는 다른 사용자가 자신의 키를 가져오는 프로필 구성을 공유할 때 유용합니다.
봇별 API 키는 프로필 구성에 저장됩니다. 전체 프로필 내보내기에 포함되지만 공유 봇 URL 또는 안전 내보내기에는 절대 포함되지 않습니다.
프로필 간 전환
왼쪽 사이드바에서 봇을 클릭하여 전환합니다. 채팅 영역이 해당 봇의 대화 기록을 로드하고 설정 패널이 해당 설정을 표시하도록 업데이트됩니다.
전환 시:
- 현재 봇의 구성이 저장됨 (디바운스됨)
- 새 봇의 채팅 기록이 IndexedDB에서 로드됨
- 설정 패널이 새 봇의 설정으로 채워짐
- 새 봇에 백그라운드 스트림이 여전히 실행 중이면 다시 연결됨
프로필 설정 편집
오른쪽 설정 패널은 활성 봇에 대해 항상 편집 가능합니다. 변경 사항은 300ms 디바운스로 자동 저장됩니다 -- 편집만 하면 설정이 유지됩니다.
전체 프로필 편집기에 액세스하려면:
- 설정 > 프로필 열기
- 편집할 프로필 선택
- 필드 수정: 이름, 멤버, 시스템 프롬프트, 온도, 고급 설정
- 변경 사항이 자동으로 저장됨
프로필 가져오기 및 내보내기
내보내기
두 가지 내보내기 모드가 있습니다:
| 모드 | API 키 | 사용 사례 |
|---|---|---|
| 안전 내보내기 | 제거됨 (멤버에 제공업체 + 모델만 있음) | 다른 사람과 공유 |
| 전체 내보내기 | 포함됨 | 개인 백업, 교차 기기 전송 |
설정 > 프로필 > 내보내기에서 내보내기. 파일은 프로필 객체의 JSON 배열입니다.
가져오기
가져오기는 다음을 허용합니다:
- 단일 프로필 객체:
{ "name": "...", "members": [...], ... } - 프로필 배열:
[{ "name": "...", ... }, { "name": "...", ... }]
가져오기 시:
- 모든 프로필에 새 고유 ID가 할당됨 (충돌 없음)
- 타임스탬프가 가져오기 시간으로 설정됨
- 프로필이 기존 목록에 추가됨 (교체 아님)
가져온 프로필은 추가적입니다. 기존 프로필을 덮어쓰거나 교체하지 않습니다.
Councils의 프로필 드롭다운
Council을 구축할 때 멤버는 프로필 드롭다운을 통해 선택됩니다 -- 제공업체와 모델을 인라인으로 선택하는 것이 아닙니다. 이것은 다음을 의미합니다:
- 먼저 개별 프로필을 만듭니다 (council에 원하는 모델당 하나)
- Council 빌더에서 프로필 드롭다운에서 선택하여 멤버 추가
- 각 council 멤버는 ID로 프로필을 참조
이 설계를 통해 여러 councils에서 동일한 프로필을 재사용할 수 있고 프로필 변경(예: API 키 업데이트)이 해당 프로필을 참조하는 모든 councils에 자동으로 전파됩니다.
프로필 해결
메시지가 전송되면 플랫폼은 다음 순서로 프로필 구성을 해결합니다:
- 봇별 API 키 (프로필의 멤버 구성에 저장됨)
- 프로필 참조 (멤버가 ID로 다른 프로필을 참조하는 경우)
- 제공업체 일치 프로필 (키가 있는 일치하는 제공업체에 대해 모든 프로필 스캔)
- 전역 API 키 (
localStorage['ais-apikey-{provider}']에서)
이 계단식 해결은 시스템 어디에나 존재하는 경우 API 키가 항상 발견됨을 보장합니다.
프로필 삭제
프로필을 삭제하려면:
- 왼쪽 사이드바에서 삭제할 봇 위에 마우스 올리기
- 삭제 버튼 클릭 (휴지통 아이콘)
- 대화 상자에서 삭제 확인
프로필을 삭제하면 봇, 채팅 기록 및 메모리가 제거됩니다. 이 작업은 실행 취소할 수 없습니다. 삭제된 프로필을 참조하는 Councils는 해당 멤버가 제거됩니다.
프로필 저장
| 속성 | 세부 정보 |
|---|---|
| 백엔드 | IndexedDB (키: ais-profiles) with localStorage 동기화 백업 |
| 지속성 | 페이지 다시 로드 및 브라우저 재시작에서 생존 |
| 범위 | 브라우저에 로컬 |
| 내보내기 | "모든 데이터 내보내기" 백업에 포함 |
| 공유 URL | 봇 구성 (전체 프로필이 아님)이 공유 URL에 인코딩됨 |