microsoft/prompty

Prompty makes it easy to create, manage, debug, and evaluate LLM prompts for your AI applications. Prompty is an asset class and format for LLM prompts designed to enhance observability, understandability, and portability for developers.

해결하는 문제

Prompty는 LLM 프롬프트를 위한 표준화되고 이식 가능한 Markdown 파일 형식 (.prompty)을 제공합니다. 프롬프트 엔지니어링 프로세스를 애플리케이션 코드와 분리하여, 개발자가 프롬프트를 한 번 작성하면 프롬프트 본문을 변경하지 않고도 다양한 언어 런타임 (Python, TypeScript, Rust, C#, Java, Go, Swift) 및 LLM 제공업체 (OpenAI, Microsoft Foundry, Anthropic)에서 실행할 수 있습니다.

작동 방식

Prompty는 두 부분으로 구성된 파일 구조를 사용합니다. 설정(모델 ID, 제공업체, 연결 세부 정보, 입력 및 도구)을 위한 YAML frontmatter와 역할 마커(예: system:, user:) 및 템플릿 구문(Jinja2 또는 Mustache)을 사용하는 실제 프롬프트 텍스트를 위한 Markdown 본문입니다.

프롬프트를 실행하면 Prompty 런타임이 파일을 로드하고, 제공된 입력으로 템플릿을 렌더링하고, 역할을 파싱한 다음, LLM 제공업체에 요청을 보냅니다. 더 복잡한 상호 작용을 위해 turn() 함수는 "에이전트 턴"(agentic turns)을 활성화하여, 모델이 도구 호출을 반복하고 최종 답변을 반환하기 전에 메모리/컨텍스트 예산을 관리할 수 있도록 합니다.

대상 사용자

여러 프로그래밍 언어와 다양한 모델 제공업체 전반에서 일관된 방식으로 프롬프트를 관리, 버전 관리 및 테스트하려는 LLM 기반 애플리케이션 개발자.

주요 특징

  • 크로스 런타임 지원: Python, TypeScript를 비롯하여 Rust, C#, Java, Go, Swift 등 여러 언어에 대한 공식 패키지 제공.

  • VS Code 확장 프로그램: 실시간 미리보기, 엔드포인트 관리를 위한 연결 사이드바, 대화형 테스트를 위한 채팅 모드, 전체 파이프라인 디버깅을 위한 추적 뷰어 포함.

  • 에이전트 기능: 도구 호출 루프, 런타임 제어(가드레일, 재시도), 메모리 인식 턴을 지원하여 이식 가능한 에이전트 동작 구현.

  • 이식 가능한 자산: 프롬프트 파일 자체를 수정하지 않고도 환경 변수나 런타임 설정을 통해 LLM 엔드포인트와 키를 전환 가능.

  • 인용 및 추적: 실행할 때마다 .tracy 추적 파일이 생성되어 렌더링, 파싱, 실행 타이밍 및 페이로드를 검사 가능.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트