Class: Observ::PromptManager

Inherits:
Object
  • Object
show all
Extended by:
CacheStatistics, Caching, Comparison, VersionManagement
Defined in:
app/services/observ/prompt_manager.rb,
app/services/observ/prompt_manager/caching.rb,
app/services/observ/prompt_manager/comparison.rb,
app/services/observ/prompt_manager/cache_statistics.rb,
app/services/observ/prompt_manager/version_management.rb

Overview

PromptManager provides a high-level interface for managing prompts with advanced caching, versioning, and comparison capabilities.

This service is organized using concerns:

  • Caching: Cache operations, invalidation, and warming
  • CacheStatistics: Hit/miss tracking and reporting
  • VersionManagement: CRUD and state transition operations
  • Comparison: Version comparison and diffing

Examples:

Fetching a prompt with caching

prompt = PromptManager.fetch(name: 'my-prompt', state: :production)

Creating and promoting a new version

prompt = PromptManager.create(
  name: 'my-prompt',
  prompt: 'Hello {{name}}',
  config: { model: 'gpt-4o' },
  promote_to_production: true
)

Cache management

PromptManager.warm_cache(['prompt1', 'prompt2'])
PromptManager.invalidate_cache(name: 'my-prompt')
stats = PromptManager.cache_stats('my-prompt')

Defined Under Namespace

Modules: CacheStatistics, Caching, Comparison, VersionManagement

Method Summary

Methods included from Caching

bump_cache_stamp, cache_key, cache_stamp, cache_stamp_key, critical_prompt_names, fetch, fetch_all, invalidate_cache, warm_cache

Methods included from CacheStatistics

cache_stats, clear_stats

Methods included from VersionManagement

create, demote, promote, restore, rollback, versions

Methods included from Comparison

compare_versions