weave.StringPrompt 또는 weave.MessagesPrompt 클래스를 사용할 수 있습니다. 요구 사항이 더 복잡하다면 이러한 클래스나 기본 클래스인 weave.Prompt를 서브클래싱하고 format 방법을 재정의할 수 있습니다.
weave.publish로 프롬프트를 게시하면 Weave 프로젝트의 Prompts 페이지에 표시되며, 여기서 본인과 공동 작업자가 이를 찾아보고 재사용할 수 있습니다.
StringPrompt
StringPrompt는 시스템 메시지, 사용자 질의 또는 LLM에 대한 독립적인 텍스트 입력에 사용할 수 있는 단일 문자열 프롬프트를 기록합니다. 여러 메시지로 이루어진 대화 수준의 복잡성이 필요하지 않은 개별 프롬프트 문자열을 관리할 때는 StringPrompt를 사용하세요.
- Python
- TypeScript
MessagesPrompt
MessagesPrompt를 사용하면 멀티턴 대화와 채팅 기반 프롬프트를 기록할 수 있습니다. 이 기능은 전체 대화 흐름을 나타내는 메시지 객체 배열(예: system, user, assistant 역할)을 저장합니다. 여러 메시지에 걸쳐 컨텍스트를 유지해야 하거나, 특정 대화 패턴을 정의하거나, 재사용 가능한 대화 템플릿을 만들어야 하는 채팅 기반 LLM에는 MessagesPrompt를 사용하세요.
- Python
- TypeScript
프롬프트 매개변수화
StringPrompt와 MessagesPrompt는 모두 매개변수화를 통해 동적 콘텐츠를 지원합니다. 즉, 플레이스홀더({variable} 구문 사용)가 포함된 재사용 가능한 프롬프트 템플릿을 만들고, 런타임에 서로 다른 값으로 이를 채워 넣을 수 있습니다. 매개변수화는 일관된 구조를 유지하면서도 프롬프트를 서로 다른 입력, 사용자 데이터, 또는 컨텍스트에 맞게 조정해야 할 때 유용합니다. format() 방법은 이러한 플레이스홀더를 실제 값으로 바꾸기 위한 키-값 쌍을 받습니다.
- Python
- TypeScript
MessagesPrompt에도 사용할 수 있습니다.
- Python
- TypeScript