mirror of
https://github.com/hoshikawa2/compass_backoffice.git
synced 2026-07-09 22:04:20 +00:00
first commit
This commit is contained in:
72
scripts_original_develop/get_prompt_from_langfuse.py
Normal file
72
scripts_original_develop/get_prompt_from_langfuse.py
Normal file
@@ -0,0 +1,72 @@
|
||||
"""
|
||||
Simple script to test Langfuse connection and retrieve a prompt.
|
||||
|
||||
Usage:
|
||||
uv run python scripts/get_prompt_from_langfuse.py
|
||||
"""
|
||||
|
||||
# Import settings and setup Langfuse environment variables
|
||||
from src.core.config import settings
|
||||
settings.setup_langfuse()
|
||||
|
||||
from langfuse import Langfuse
|
||||
from src.core.logging import setup_logging
|
||||
|
||||
# Setup logging to see what's happening
|
||||
logger = setup_logging(log_level=settings.LOG_LEVEL, log_format=settings.LOG_FORMAT)
|
||||
|
||||
def main():
|
||||
try:
|
||||
logger.info(f"Connecting to Langfuse at: {settings.LANGFUSE_BASE_URL}")
|
||||
|
||||
# Initialize Langfuse client
|
||||
# The client will use the environment variables exported by settings.setup_langfuse()
|
||||
# or we can pass them explicitly as in the upload script.
|
||||
client = Langfuse(
|
||||
public_key=settings.LANGFUSE_PUBLIC_KEY,
|
||||
secret_key=settings.LANGFUSE_SECRET_KEY,
|
||||
host=settings.LANGFUSE_BASE_URL,
|
||||
)
|
||||
|
||||
# List of prompts we know should exist (from upload_prompts_to_langfuse.py)
|
||||
prompt_name = "ticket_reclassification_pt"
|
||||
|
||||
logger.info(f"Attempting to retrieve prompt: '{prompt_name}'")
|
||||
|
||||
|
||||
prompt = client.get_prompt(prompt_name, max_retries=2)
|
||||
|
||||
logger.info(
|
||||
"Prompt retrieved successfully",
|
||||
extra={
|
||||
"prompt_name": prompt_name,
|
||||
"version": prompt.version,
|
||||
"labels": getattr(prompt, "labels", None),
|
||||
},
|
||||
)
|
||||
|
||||
print("\n" + "=" * 50)
|
||||
print(f"PROMPT: {prompt_name} | version={prompt.version} | labels={getattr(prompt, 'labels', 'N/A')}")
|
||||
print("=" * 50)
|
||||
print(prompt.prompt)
|
||||
print("=" * 50 + "\n")
|
||||
|
||||
except Exception as error:
|
||||
error_type = type(error).__name__
|
||||
error_detail = str(error) if str(error) else "(no message)"
|
||||
|
||||
logger.error(
|
||||
"Failed to retrieve prompt",
|
||||
extra={
|
||||
"prompt_name": prompt_name,
|
||||
"error_type": error_type,
|
||||
"error_detail": error_detail,
|
||||
},
|
||||
exc_info=True,
|
||||
)
|
||||
|
||||
finally:
|
||||
client.flush()
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
Reference in New Issue
Block a user