LLM 도구를 위한 JSON 형식
도구를 공유하는 휴대용 방법
소개
프로그램이나 툴 편집기에 빠르게 추가할 수 있는 방식으로 도구를 공유하는 것은 도구를 표현하고 사용하는 방법에 대한 표준 방식이 있다면 크게 향상될 것입니다. 우리는 다음과 같은 기능을 가능하게 하고 싶습니다:
도구를 시각적으로 나타내는 아이콘
프롬프트를 위한 메타 데이터:
도구의 이름
도구에 대한 설명
도구 사용법에 대한 참고 사항
도구 문자열에 포함된 플레이스홀더 매개변수
예상 출력
버전 및 타임스탬프.
JSON 형식 규격
우리의 샘플 JSON은 여기에서 다운로드 받으실 수 있습니다.
필드 설명
model_prompt: GPT 모델 프롬프트가 포함된 문자열입니다.
metadata: GPT 모델 프롬프트에 대한 추가 정보를 포함하는 객체입니다. 다음과 같은 하위 필드가 있습니다:
model_version: 사용된 GPT 모델의 버전을 나타내는 문자열입니다.
creator: GPT 모델 프롬프트의 창시자에 대한 정보를 포함하는 객체로, 다음과 같은 하위 필드들을 가지고 있습니다:
name: 창시자의 이름을 나타내는 문자열입니다.
email: 창시자의 이메일을 나타내는 문자열입니다.
organization: 창시자가 속한 조직을 나타내는 문자열입니다.
parameters: GPT 모델 파라미터에 대한 정보를 포함하는 객체로, 다음과 같은 하위 필드들을 가지고 있습니다:
temperature: 출력물의 무작위성을 제어하기 위해 사용된 온도를 나타내는 실수입니다.
max_tokens: 생성된 응답에서 토큰의 최대 수를 나타내는 정수입니다.
top_p: 핵심 샘플링 확률 임계값을 나타내는 실수입니다.
frequency_penalty: 데이터셋에서의 토큰 빈도에 기반한 토큰에 적용되는 패널티를 나타내는 실수입니다.
presence_penalty: 프롬프트에서의 새 토큰의 존재에 기반한 토큰에 적용되는 패널티를 나타내는 실수입니다.
timestamp: GPT 모델 프롬프트가 생성되거나 마지막으로 수정된 날짜와 시간을 나타내는 ISO 8601 형식의 문자열입니다.
expected_output (선택 사항):
model_prompt
에서 기대되는 출력과 관련된 필드를 포함하는 객체로, 다음과 같은 하위 필드를 포함합니다:type:
model_prompt
에서 기대되는 출력의 타입을 나타내는 문자열입니다.format (선택 사항): 해당되는 경우 기대되는 출력의 형식을 나타내는 문자열입니다.
language (선택 사항): 타입이
code
인 경우 기대되는 출력의 프로그래밍 언어를 나타내는 문자열입니다.allowed_values (선택 사항): 타입이
limited
인 경우 허용되는 출력값의 목록을 포함하는 문자열 배열입니다.
variables (선택 사항): f-string 스타일로
model_prompt
문자열에 삽입될 수 있는 변수가 포함된 목록입니다. 각 변수는 다음과 같은 하위 필드를 포함합니다:name: 변수 이름을 나타내는 문자열입니다.
type: 변수의 타입을 나타내는 문자열입니다. 현재
type
의 가능한 값은 기본 변수용text
와 선택 변수용single-select
또는multi-select
입니다.description: 변수의 설명을 나타내는 문자열로, 사용법과 예시를 포함합니다.
default: 변수의 기본 값을 나타내는 값입니다. 이 값은
type
이text
또는single-select
인 경우 문자열이고,multi-select
인 경우 문자열 배열입니다.allowed_values: 변수 타입이
single-select
또는multi-select
인 경우 허용된 값의 목록을 포함하는 문자열 배열입니다.
avatar (선택 사항): 프롬프트의 아바타나 아이콘 역할을 하는 그래픽 이미지와 관련된 필드를 포함하는 객체입니다. 다음과 같은 하위 필드들이 있습니다:
avatar_type: 아바타 데이터의 타입을 지정하는 문자열입니다.
avatar: `avatar_type`이 URL인 경우 이미지를 가리키는 URL을 포함하는 문자열이거나, `avatar_type`이 base64인 경우 이미지를 나타내는 base64로 인코딩된 문자열입니다.
prompt_name (선택 사항): 프롬프트의 이름을 나타내는 문자열입니다.
description (선택 사항): 도구와 그 목적에 대한 간략한 설명을 제공하는 문자열입니다.
usage_notes (선택 사항): 도구 사용에 있어서 창작자가 제공하는 자유 형식의 노트나 특정 고려사항들을 포함하는 문자열입니다.
model_prompt
에서 기대되는 출력의 형식을 지정하려면 metadata
객체 내에 expected_output
객체를 추가할 수 있습니다. 기대되는 출력의 타입에 따라 expected_output
객체에 관련 하위 필드를 포함할 수 있습니다.
f-string 스타일로 model_prompt
문자열에 삽입될 수 있는 변수 필드를 포함시키려면 metadata
객체 내에 별도의 variables
목록을 추가할 수 있습니다.
프롬프트 이력에 대한 아바타나 아이콘이 될 그래픽 이미지를 포함시키려면 metadata
객체 내에 avatar
필드를 추가할 수 있습니다.
expected_output
, variables
, avatar
, prompt_name
, description
, 그리고 usage_notes
필드들을 metadata
객체 내에 포함시키면 프롬프트에 대한 모든 맥락 정보를 한 곳에 모아 관리하고 이해하는 데 도움이 됩니다.
JSON 객체의 최상위 레벨에 version
필드를 사용하여 전체 JSON 파일의 버전을 명시적으로 추적할 수 있습니다
Last updated