usage.py 999 B

123456789101112131415161718192021222324252627282930313233343536
  1. import dspy
  2. from prompt_migration.engine import PromptMigrationEngine, PromptTemplate
  3. from prompt_migration.evaluator import PromptEvaluator
  4. # Initialize LMs
  5. openai_lm = dspy.OpenAI(model="gpt-3.5-turbo")
  6. target_lm = dspy.HFModel(model="gpt2")
  7. # Create migration engine
  8. engine = PromptMigrationEngine(openai_lm, target_lm)
  9. # Define source prompt
  10. source_prompt = PromptTemplate(
  11. template="Summarize the following text: {text}",
  12. input_variables=["text"],
  13. model_type="openai"
  14. )
  15. eval_dataset = [
  16. {"text": "Example text 1", "expected_answer": "Summary 1"},
  17. {"text": "Example text 2", "expected_answer": "Summary 2"},
  18. ]
  19. # Migrate prompt
  20. migrated_prompt = engine.migrate_prompt(source_prompt, eval_dataset)
  21. # Evaluate migration
  22. evaluator = PromptEvaluator(openai_lm, target_lm)
  23. metrics = evaluator.evaluate(
  24. source_prompt.template,
  25. migrated_prompt.template,
  26. eval_dataset
  27. )
  28. print(f"Migrated prompt: {migrated_prompt.template}")
  29. print(f"Evaluation metrics: {metrics}")