템플릿 권장사항 및 고려사항


이 페이지에서는 아직 지원되지 않는 기능을 비롯하여 서버 프롬프트 템플릿의 몇 가지 권장사항과 고려사항 을 설명합니다 . 이러한 기능 중 다수는 서버 프롬프트 템플릿이 발전함에 따라 제공될 예정이므로 출시 노트를 확인하여 업데이트를 확인하세요.

권장사항

이러한 권장사항 중 다수는 템플릿 관리에 자세히 설명되어 있습니다.

템플릿 버전 관리

  • 시맨틱 버전 관리 (semver)를 사용하는 버전이 추가된 템플릿 ID를 만듭니다.

  • Firebase Remote Config 를 사용하면 요청에서 템플릿과 기타 값을 쉽게 변경할 수 있습니다.

템플릿 보호

  • 변경사항을 철저히 테스트하지 않은 경우 프로덕션에서 사용되는 템플릿을 수정하지 마세요.

  • 프로덕션으로 전환하기 전에 템플릿을 잠급니다.

    • 템플릿을 잠그면 의도치 않은 수정을 방지할 수 있지만 잠그더라도 수정을 완전히 차단하지는 않습니다. 적절한 권한이 있는 프로젝트 구성원은 언제든지 템플릿을 잠금 해제하여 수정할 수 있습니다.

    • 코드, 특히 프로덕션 코드에서 활발하게 사용되는 템플릿을 잠그는 것이 좋습니다.

Gemini API 사용 보호

  • 입력 변수에 강력한 입력 유효성 검사 를 작성하면 다음과 같은 작업을 수행하는 데 도움이 됩니다.

    • 프롬프트 인젝션을 방지하는 데 도움이 될 수 있습니다.
    • 요청이 성공하고 응답이 예상대로 이루어지도록 하는 데 도움이 될 수 있습니다.
  • Firebase 프로젝트에 템플릿 전용 모드를 적용하여 Gemini API 요청이 Firebase AI Logic 서버 프롬프트 템플릿을 사용하도록 합니다.

서버 프롬프트 템플릿에서 아직 지원되지 않는 기능

이러한 기능 중 다수는 서버 프롬프트 템플릿이 발전함에 따라 제공될 예정이므로, 출시 노트를 확인하여 업데이트를 확인하세요.

템플릿에서 아직 지원되지 않는 Firebase AI Logic 기능

다음과 같은 Firebase AI Logic의 표준 기능은 서버 프롬프트 템플릿을 통해 아직 지원되지 않습니다.

  • 양방향 스트리밍 (Gemini Live API)
  • 하이브리드 또는 기기 내 추론
  • 출력을 enum 목록으로 제한

또한 Firebase 콘솔에서 AI 모니터링을 사용하는 경우 템플릿 ID가 아직 레코드에 채워지지 않습니다.

템플릿에서 아직 지원되지 않는 Dotprompt의 일반적인 요소

서버 프롬프트 템플릿은 Dotprompt의 다음과 같은 일반적인 요소를 지원할 예정입니다.

  • 프런트매터에서 입력 및 출력 스키마에 JSON 스키마 사양 사용

    • 이 사양은 서버가 아닌 템플릿 요청에서도 지원되지 않습니다. 현재는 OpenAPI 스키마 사양만 지원합니다.
  • *를 사용하여 와일드 카드 필드 정의 선언

  • @key를 사용하거나 일반적으로 객체 입력의 필드를 반복합니다(이 경우 @key가 관련됨).

  • 현재 this와 관계없이 루트 변수 컨텍스트를 참조할 수 있는 @root 사용

서버 프롬프트 템플릿은 Dotprompt의 다음과 같은 일반적인 요소를 지원하지 않을 가능성이 높습니다.

  • 다른 템플릿에 포함할 수 있는 재사용 가능한 템플릿 스니펫인 부분 사용

기타 고려사항