Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
134 commits
Select commit Hold shift + click to select a range
852f069
init frontend
heyjustinai Jul 1, 2025
c340505
init frontend
heyjustinai Jul 1, 2025
07f827f
add coverage
heyjustinai Jul 2, 2025
2d09807
add coverage
heyjustinai Jul 2, 2025
8563500
refactor: migrate from OpenAI to OpenRouter with shared enhancement a…
heyjustinai Jul 6, 2025
caab05c
refactor: migrate from OpenAI to OpenRouter with shared enhancement a…
heyjustinai Jul 6, 2025
4c15201
feat: add dependency checker and enhance dataset management, also man…
heyjustinai Jul 6, 2025
1f41e61
feat: add dependency checker and enhance dataset management, also man…
heyjustinai Jul 6, 2025
fd8439b
feat: added quick start feature
heyjustinai Jul 6, 2025
75dc40e
feat: added quick start feature
heyjustinai Jul 6, 2025
c64b44d
feat: enhance frontend with new components and API endpoints
heyjustinai Jul 7, 2025
ad7e824
feat: enhance frontend with new components and API endpoints
heyjustinai Jul 7, 2025
041c363
add gitignore to package-lock
heyjustinai Jul 7, 2025
cb8bcc6
add gitignore to package-lock
heyjustinai Jul 7, 2025
e90058c
Remove package-lock.json from tracking (now in .gitignore)
heyjustinai Jul 7, 2025
eae4221
Remove package-lock.json from tracking (now in .gitignore)
heyjustinai Jul 7, 2025
b15e18c
feat: implement dataset analysis service and onboarding flow
heyjustinai Jul 15, 2025
8bffc04
feat: implement dataset analysis service and onboarding flow
heyjustinai Jul 15, 2025
036bf49
feat: enhance onboarding process with new metrics and model provider …
heyjustinai Jul 15, 2025
6c71c8b
feat: enhance onboarding process with new metrics and model provider …
heyjustinai Jul 15, 2025
c225aae
refactor: update dataset analysis and field mapping logic based on fe…
heyjustinai Jul 17, 2025
b4d4f32
refactor: update dataset analysis and field mapping logic based on fe…
heyjustinai Jul 17, 2025
87d3c1d
enhance: added optimizers selectors and working on config transformers
heyjustinai Jul 24, 2025
62398f2
enhance: added optimizers selectors and working on config transformers
heyjustinai Jul 24, 2025
9d5c9a7
Merge branch 'frontend' of github.com:meta-llama/llama-prompt-ops int…
heyjustinai Sep 15, 2025
d1e18c1
script - update readme
heyjustinai Sep 15, 2025
71bfb0f
feat: enhance configuration transformation logic - e2e working state
heyjustinai Sep 29, 2025
9512964
refactor - remove legacy components
heyjustinai Sep 29, 2025
64c258a
feat: add optimization grid page and related components for enhanced …
heyjustinai Sep 30, 2025
7124f2b
Merge branch 'frontend' of github.com:meta-llama/llama-prompt-ops int…
heyjustinai Sep 30, 2025
59dbf83
refactor: implement backend API for dataset management, prompt enhanc…
heyjustinai Sep 30, 2025
a6424b1
ui: update optimization grid width
heyjustinai Sep 30, 2025
e13cac9
Merge pull request #44 from meta-llama/name-migration
heyjustinai Oct 1, 2025
d3dca0b
fix: added back the utils functions
heyjustinai Oct 1, 2025
61ee1fd
fix: isort errors
heyjustinai Oct 1, 2025
00c5d36
Merge pull request #47 from meta-llama/update-docs
heyjustinai Oct 1, 2025
9e667cc
refactor: update core components to generalize prompt optimization
heyjustinai Oct 1, 2025
1d2ec0e
Merge pull request #52 from meta-llama/warning-fix
heyjustinai Oct 1, 2025
670efa1
refactor: update test coverage configuration and remove obsolete test…
heyjustinai Oct 2, 2025
7d3bc92
feat: add LiteLLM model adapter for inference
heyjustinai Oct 23, 2025
2aacb4d
feat: introduce centralized meta prompt templates for QPDO optimizati…
heyjustinai Oct 23, 2025
03676eb
feat: implement ranking systems and Thompson sampling for PDO optimiz…
heyjustinai Oct 23, 2025
372d57c
feat: add PDO module and optimization engine with support for dueling…
heyjustinai Oct 23, 2025
5c15352
feat: implement PDOStrategy for prompt optimization using dueling ban…
heyjustinai Oct 23, 2025
53fa826
feat: rename and PDO module components including optimization engine,…
heyjustinai Oct 23, 2025
dc339ec
usecase: add configuration and dataset for Web of Lies PDO optimization
heyjustinai Oct 23, 2025
654a411
docs: update installation instructions in README to recommend source …
heyjustinai Oct 23, 2025
0237a99
docs: add announcement for the new Prompt Duel Optimizer (PDO) in REA…
heyjustinai Oct 23, 2025
72eb96c
feat: added eval for Web of Lies PDO prompt optimization
heyjustinai Oct 23, 2025
b937782
Merge pull request #53 from meta-llama/pdo
heyjustinai Oct 23, 2025
02a684c
docs: cerebras inference notebook
heyjustinai Oct 28, 2025
91ca549
Merge branch 'main' of github.com:meta-llama/prompt-ops
heyjustinai Oct 28, 2025
d5e8a20
docs: update cerebras prompt-ops notebook
heyjustinai Oct 28, 2025
560728a
update: cerebras inference notebook
heyjustinai Oct 28, 2025
8f51be9
docs: update links for notebook
heyjustinai Oct 28, 2025
3327b5a
feat: add PDO tutorial notebook and associated images for prompt opti…
heyjustinai Oct 30, 2025
f41cbea
“Add-open-ended-close-ended-judge-template“
yuanchenwu726 Nov 4, 2025
462e9bb
docs: add tutorials for close-ended and open-ended tasks
Yuanchen-Wu Nov 11, 2025
df92032
chore: remove ms-marco results, add readme for ms-marco
heyjustinai Nov 11, 2025
63804a3
feat: enhance PDO notebok with exampels, installation instructions, a…
heyjustinai Nov 12, 2025
9be8703
feat: update PDO tutorial notebook with execution counts, installatio…
heyjustinai Nov 12, 2025
46128a1
chore: name change on PDO notebook, pre commit formating
heyjustinai Nov 12, 2025
4ead714
Merge pull request #54 from meta-llama/pdo-notebook
heyjustinai Nov 12, 2025
738acae
feat: add URL-based routing for docs navigation and clickable logo
connortreacy Nov 17, 2025
505e739
fix: output_field -> output_fields
connortreacy Nov 18, 2025
fde2fee
enhance: added websocket status check to ensure backend readiness
connortreacy Nov 18, 2025
968dd1f
enhance: add fields from optimizationResult to success UI component
connortreacy Nov 19, 2025
96564cf
Adding projects card to homepage and updating some accessor methods
connortreacy Dec 1, 2025
d02590a
Migrate from OpenRouter to LiteLLM native approach
connortreacy Dec 1, 2025
9b4e51e
Update CLI to not default to OPENROUTER_API_KEY
connortreacy Dec 1, 2025
1fcdd3a
Enhance DSPyModelAdapter and LiteLLMModelAdapter with retry logic for…
connortreacy Dec 2, 2025
1ac5bb9
feat: enhance model name retrieval in convert_json_to_yaml function t…
connortreacy Dec 2, 2025
894a21d
Merge pull request #2 from connortreacy/model_name_fix
connortreacy Dec 4, 2025
1230912
chore: Refactor code for improved readability and consistency in mode…
connortreacy Dec 4, 2025
47a6e8c
fix: update projects endpoint code to look in the correct subfolders …
connortreacy Dec 5, 2025
27f030c
Merge branch 'litellm' into frontend
connortreacy Dec 5, 2025
c538764
refactor: improve API key handling with LiteLLM auto-detection
connortreacy Dec 8, 2025
00ebaa5
chore: remove unused dependencies
connortreacy Dec 8, 2025
affc68b
fix: filter output_fields param for metrics that don't support it
connortreacy Dec 8, 2025
c574580
feat: enhance configuration and error handling in prompt optimization
connortreacy Dec 8, 2025
4c6d469
refactor: update system prompt for enhanced clarity and structure
connortreacy Dec 9, 2025
ef29ca0
refactor: streamline prompt enhancement logic and improve error handling
connortreacy Dec 9, 2025
793c838
chore: update enhance system prompt
connortreacy Dec 10, 2025
3e6adb0
feat: enhance prompt optimization with abort functionality and perfor…
connortreacy Dec 11, 2025
8b01033
feat: configure backend settings and update API references
connortreacy Dec 11, 2025
e791ed9
feat: enhance optimization results component with diff views and stats
connortreacy Dec 11, 2025
79ca8f2
feat(ui): Design system refresh with consistent buttons and badges
connortreacy Dec 12, 2025
5bd8039
feat(ui): Add comprehensive dark mode support to onboarding components
connortreacy Dec 12, 2025
084d8ee
feat: add new components and refactor onboarding UI
connortreacy Dec 16, 2025
5fc090a
refactor: rename llama_prompt_ops to prompt_ops and improve module st…
connortreacy Dec 16, 2025
f9f3300
refactor: rename llama-prompt-ops to prompt-ops across frontend and b…
connortreacy Dec 17, 2025
a13c7e3
refactor: update references from llama-prompt-ops to prompt-ops in co…
connortreacy Dec 17, 2025
55eb5aa
chore: add PyYAML dependency for dataset analysis
heyjustinai Dec 17, 2025
39cd9a5
remove unused UI components from the frontend
heyjustinai Dec 17, 2025
a8a9764
sync Python dependencies in start-dev script and add litellm to requi…
heyjustinai Dec 17, 2025
8ce8ba9
remove unused Sonner component and related package from frontend
heyjustinai Dec 17, 2025
40ac380
remove quick start demo functionality from backend and frontend
heyjustinai Dec 17, 2025
e2dc1e6
clean up frontend dependencies in package.json
heyjustinai Dec 17, 2025
6761dee
streamline type imports across components
heyjustinai Dec 17, 2025
e76709f
add domain types for Project, OptimizationStep, and DocItem to the fr…
heyjustinai Dec 17, 2025
7054703
enhance type definitions and streamline imports across onboarding com…
heyjustinai Dec 17, 2025
3a24bb2
add testing framework and coverage configuration for backend
connortreacy Dec 18, 2025
d2fc806
refactor onboarding components for improved user experience and funct…
connortreacy Dec 18, 2025
409f5b9
implement unified diff view in OnboardingWizard for enhanced prompt c…
connortreacy Dec 18, 2025
70caab1
refactor onboarding components for enhanced usability and layout impr…
heyjustinai Dec 18, 2025
de9a482
add meta tags and page title management to Playground component, and …
heyjustinai Dec 18, 2025
da9a896
add custom font families and fade-in animation to Tailwind configuration
heyjustinai Dec 18, 2025
57cb48f
refactor DocsTab, DocsSidebar, and DocsContent components for improve…
heyjustinai Dec 18, 2025
d0fee74
enhance error handling and dataset upload feedback in onboarding comp…
connortreacy Dec 18, 2025
51eb595
implement model connection testing and error handling in onboarding c…
connortreacy Dec 18, 2025
f4a993b
Implement dynamic documentation structure loading and error handling …
heyjustinai Dec 18, 2025
ce73db6
refactor styling in ModelProviderSelector for improved UI consistency
connortreacy Dec 18, 2025
69167a3
Merge branch 'frontend' of https://github.com/connortreacy/prompt-ops…
connortreacy Dec 18, 2025
3d514e2
Update styling and layout in ModelProviderSelector component for impr…
heyjustinai Dec 18, 2025
c7ac731
Add Docs page with navigation and main content layout
heyjustinai Dec 19, 2025
02cd4a3
Update UI components with new color scheme for improved visibility an…
heyjustinai Dec 19, 2025
613aa95
Refactor onboarding and optimization components for improved UI consi…
heyjustinai Dec 19, 2025
f4e4814
Enhance onboarding components with updated styling and improved user …
heyjustinai Dec 19, 2025
6be8767
Add DNA logo SVG and two hero video files for enhanced visual content
heyjustinai Dec 19, 2025
507f25a
Add multiple new hero video files to enhance visual content
heyjustinai Dec 19, 2025
c1642b6
Refactor routing and update UI components for improved navigation and…
heyjustinai Dec 19, 2025
ab78588
Merge origin/frontend: keep both yaml+litellm, local dark theme styli…
heyjustinai Dec 19, 2025
c5a32bb
Refactor OnboardingWizard step-progress component layout for improved…
connortreacy Dec 19, 2025
9ef6223
Add default API key handling and reliable API key testing in backend …
connortreacy Dec 19, 2025
956462d
Enhance ModelProviderSelector and OnboardingWizard components to inco…
connortreacy Dec 19, 2025
6e40757
Enhance accessibility and styling in Playground and PromptInput compo…
heyjustinai Dec 19, 2025
8ccfd14
Remove start-dev.sh script and update README for new backend startup …
heyjustinai Dec 19, 2025
3cd76b7
Merge pull request #58 from connortreacy/frontend
heyjustinai Dec 19, 2025
f6ce997
Merge pull request #59 from meta-llama/frontend
heyjustinai Dec 30, 2025
18cdb0e
Clear notebook outputs and update Python version metadata
8bnns Apr 20, 2026
42258e2
docs: add Arabic SOP documentation
8bnns May 5, 2026
5b924ef
docs(ar): complete Arabic SOP documentation
8bnns May 5, 2026
0f7c792
Update PDO_web_of_lies_eval.ipynb
8bnns May 6, 2026
b27c74d
Merge branch 'main' into codex/arabic-sop-docs
8bnns May 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions .coveragerc
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
[run]
source = src/prompt_ops
omit =
*/tests/*
*/site-packages/*
setup.py

[report]
exclude_lines =
pragma: no cover
def __repr__
raise NotImplementedError
if __name__ == .__main__.:
pass
raise ImportError
2 changes: 1 addition & 1 deletion .github/workflows/ci-with-coverage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:

- name: Run tests with coverage
run: |
pytest --cov=src/llama_prompt_ops --cov-report=xml tests/
pytest --cov=src/prompt_ops --cov-report=xml tests/

- name: Upload coverage to Codecov
uses: codecov/codecov-action@v3
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ jobs:
echo "Package version: $VERSION"

# Check if this version already exists on PyPI
if pip index versions llama-prompt-ops 2>/dev/null | grep -q "$VERSION"; then
if pip index versions prompt-ops 2>/dev/null | grep -q "$VERSION"; then
echo "Error: Version $VERSION already exists on PyPI"
exit 1
fi
Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
local.env


# Python cache files
__pycache__/
Expand Down
31 changes: 23 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,17 @@
<h1 align="center"> Prompt Ops </h1>

### 🎉 New: Prompt Duel Optimizer (PDO) Published!

We've published a new paper on **PDO (Prompt Duel Optimizer)** - an efficient label-free prompt optimization method using dueling bandits and Thompson sampling. PDO achieves state-of-the-art results on BIG-bench Hard and MS MARCO benchmarks.

📄 **Read the paper:** [LLM Prompt Duel Optimizer: Efficient Label-Free Prompt Optimization](https://www.arxiv.org/abs/2510.13907) (arXiv:2510.13907)

🧪 **Try it yourself:** Check out the [Web of Lies use case](use-cases/web-of-lies-pdo/) demonstrating PDO on logical reasoning tasks

⭐ **Star this repo** and follow along - we'll be publishing a detailed tutorial notebook soon!

---

## What is prompt-ops?
<p align="center">
<a href="https://pypi.org/project/prompt-ops/"><img src="https://img.shields.io/pypi/v/prompt-ops.svg" /></a>
Expand All @@ -24,11 +36,11 @@



prompt-ops is a Python package that **automatically optimizes prompts** for Llama models. It transforms prompts that work well with other LLMs into prompts that are optimized for Llama models, improving performance and reliability.
prompt-ops is a Python package that **automatically optimizes prompts** for Llama models. It transforms prompts that work well with other LLMs into prompts that are optimized for LLM models, improving performance and reliability.

**Key Benefits:**
- **No More Trial and Error**: Stop manually tweaking prompts to get better results
- **Fast Optimization**: Get Llama-optimized prompts in minutes with template-based optimization
- **Fast Optimization**: Get model-optimized prompts in minutes with template-based optimization
- **Data-Driven Improvements**: Use your own examples to create prompts that work for your specific use case
- **Measurable Results**: Evaluate prompt performance with customizable metrics

Expand Down Expand Up @@ -66,7 +78,7 @@ To get started with prompt-ops, you'll need:
2. [**Prepare your dataset**](#preparing-your-data): Create a JSON file with query-response pairs for evaluation and optimization
3. **Configure optimization**: Set up a simple YAML file with your dataset and preferences (see [example configuration](configs/facility-simple.yaml))
4. [**Run optimization**](#step-4-run-optimization): Execute a single command to transform your prompt
5. [**Get results**](#prompt-transformation-example): Receive a Llama-optimized prompt with performance metrics
5. [**Get results**](#prompt-transformation-example): Receive a model-optimized prompt with performance metrics


## Real-world Results
Expand All @@ -85,19 +97,21 @@ These results were measured on the [HotpotQA multi-hop reasoning benchmark](http

### Step 1: Installation

> **Note:** We recommend installing from source as we are currently transitioning package names on PyPI. This ensures you get the latest stable version without any naming conflicts.

```bash
# Create a virtual environment
conda create -n prompt-ops python=3.10
conda activate prompt-ops

# Install from PyPI
pip install prompt-ops

# OR install from source
# Recommended: Install from source
git clone https://github.com/meta-llama/prompt-ops.git
cd prompt-ops
pip install -e .

# Alternative: Install from PyPI (may have naming transition issues, still on version 0.0.7)
# pip install llama-prompt-ops

```

### Step 2: Create a sample project
Expand All @@ -116,7 +130,8 @@ Add your API key to the `.env` file:
```bash
OPENROUTER_API_KEY=your_key_here
```
You can get an OpenRouter API key by creating an account at [OpenRouter](https://openrouter.ai/). For more inference provider options, see [Inference Providers](./docs/inference_providers.md).

prompt-ops uses LiteLLM as a unified API client. LiteLLM automatically detects the provider from your model name (e.g., `openrouter/model`, `groq/model`) and looks for the corresponding provider-specific environment variable (`OPENROUTER_API_KEY`, `GROQ_API_KEY`, etc.). For more inference provider options, see [Inference Providers](./docs/inference_providers.md).

### Step 4: Run Optimization
The optimization will take about 5 minutes.
Expand Down
1 change: 1 addition & 0 deletions configs/facility-simple.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ dataset:
golden_output_field: "answer"

# Model configuration (minimal required settings)
# LiteLLM auto-detects API keys from provider-specific env vars (e.g., OPENROUTER_API_KEY)
model:
name: "openrouter/meta-llama/llama-3.3-70b-instruct"
task_model: "openrouter/meta-llama/llama-3.3-70b-instruct"
Expand Down
7 changes: 2 additions & 5 deletions configs/facility.yaml
Original file line number Diff line number Diff line change
@@ -1,12 +1,9 @@
# Facility dataset configuration for prompt optimization

#TODO: think if there are any way to abstract this
# provider: openrouter/hosted_vllm/togethercomputer
# model: meta-llama/llama-3.3-70b-instruct
# litellm
# Model configuration - uses LiteLLM with provider prefix
# LiteLLM auto-detects API key from provider-specific env vars (e.g., OPENROUTER_API_KEY, GROQ_API_KEY)
model:
name: "openrouter/meta-llama/llama-3.3-70b-instruct"
api_base: "https://openrouter.ai/api/v1" # rename base_url:
temperature: 0.0
# max_tokens: 2048 # Maximum number of tokens to generate
# top_p: 0.9 # Nucleus sampling parameter
Expand Down
1 change: 0 additions & 1 deletion configs/hotpotqa.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
model:
name: "openrouter/meta-llama/llama-3.1-8b-instruct"
api_base: "https://openrouter.ai/api/v1"
temperature: 0.0
max_tokens: 40960

Expand Down
15 changes: 15 additions & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
---
title: Getting Started
category: Basics
description: Learn the fundamentals of prompt-ops and choose your optimization path
order: 1
icon: book
---

# prompt-ops Getting Started Guide

Welcome to prompt-ops! This guide will help you understand what's supported out of the box and how to get started quickly.
Expand Down Expand Up @@ -54,6 +62,13 @@ prompt-ops supports various inference providers and endpoints to fit your infras
- **CSV**: Tabular data with headers
- **YAML**: Structured data in YAML format

## Documentation Languages / لغات التوثيق

- [English (current)](./README.md)
- [العربية / Arabic](./ar/README.md)

---

## Try Our Examples

We've prepared several complete examples to help you get started:
Expand Down
8 changes: 8 additions & 0 deletions docs/advanced/logging.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
---
title: Logging & Telemetry
category: Advanced
description: Configure logging levels and export optimization telemetry for analysis
order: 32
icon: settings
---

# Logging and Telemetry

The `prompt-ops` library includes a flexible logging framework to provide insights into the optimization process. You can control the verbosity of the output and export detailed telemetry for analysis.
Expand Down
8 changes: 8 additions & 0 deletions docs/advanced/readme.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
---
title: Custom Adapters & Metrics
category: Advanced
description: Create custom dataset adapters and evaluation metrics for your use case
order: 31
icon: code
---

# Using prompt-ops for your use case (with Examples)

> **Note:** This guide explains how to add new use cases to prompt-ops by either configuring existing components or creating custom components.
Expand Down
80 changes: 80 additions & 0 deletions docs/ar/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
---
title: البدء السريع
category: الأساسيات
description: تعلّم أساسيات prompt-ops واختر مسار التحسين المناسب
order: 1
icon: book
---

# دليل البدء مع prompt-ops

<div dir="rtl">

مرحبًا بك في **prompt-ops**! يساعدك هذا الدليل على فهم ما يدعمه النظام خارج الصندوق وكيفية البدء بسرعة.

## البدء السريع: اختر مسارك

- [أنا جديد على هندسة البرومبت الآلية](./basic/readme.md) — تعلّم الأساسيات عبر الأمثلة الموجّهة
- [أريد تهيئة تحسين البرومبت](./intermediate/readme.md) — تعرّف على خيارات التهيئة المتوسطة
- [لديّ مجموعة بيانات وحالة استخدام خاصة](./advanced/readme.md) — كيفية تكييف prompt-ops مع احتياجاتك

---

## اختيار محوّل مجموعة البيانات

| نوع المحوّل | صيغة الإدخال | متى تستخدمه |
|---|---|---|
| StandardJSONAdapter | `[{"question": "ما عاصمة فرنسا؟", "answer": "باريس"}]` | لمعظم مجموعات البيانات الشائعة التي تحتوي على حقلَي سؤال وإجابة |
| RAGJSONAdapter | `[{"question": "...", "context": "...", "answer": "..."}]` | عندما تتضمن مجموعة البيانات سياقات استرداد |
| محوّل مخصص | أي صيغة متخصصة لا تنطبق عليها الأنماط السابقة | عندما لا تلبّي المحوّلات الموجودة احتياجاتك |

راجع [دليل اختيار محوّل مجموعة البيانات التفصيلي](./dataset_adapter_selection_guide.md) لمزيد من المعلومات.

---

## مقاييس التقييم

| نوع المقياس | حالة الاستخدام | الصيغة المتوقعة | متى تستخدمه |
|---|---|---|---|
| **ExactMatchMetric** | المطابقة النصية البسيطة | نصوص عادية | عند الحاجة إلى مطابقة دقيقة بين التوقع والحقيقة |
| **StandardJSONMetric** | تقييم JSON هيكلي | كائنات JSON أو نصوص | عند تقييم استجابات JSON منظَّمة بحقول محددة |
| **مقياس مخصص** | احتياجات تقييم متخصصة | أي صيغة مخصصة | عندما لا تلبّي المقاييس الموجودة احتياجاتك |

راجع [دليل اختيار المقاييس التفصيلي](./metric_selection_guide.md) لمزيد من المعلومات.

---

## دعم مزودي الاستدلال المتعددين

يدعم prompt-ops مزودي استدلال ونقاط نهاية متنوعة لتناسب احتياجات بنيتك التحتية. راجع [الدليل التفصيلي لمزودي الاستدلال](./inference_providers.md) لأمثلة التهيئة مع:

- OpenRouter (واجهة برمجية سحابية)
- vLLM (نشر محلي)
- NVIDIA NIMs (حاويات محسَّنة)

---

## الصيغ المدعومة دفعةً واحدة

### صيغ البرومبت

- **ملفات نصية**: ملفات نص عادي تحتوي على تعليمات
- **نص مضمّن**: نص مباشر في تهيئة YAML
- **متغيرات القالب**: استخدم صيغة `{{variable}}` للمدخلات

### صيغ مجموعات البيانات

- **JSON**: مصفوفات من الكائنات (الأكثر شيوعًا)
- **CSV**: بيانات جدولية برؤوس أعمدة
- **YAML**: بيانات منظَّمة بصيغة YAML

---

## جرّب أمثلتنا

أعددنا عدة أمثلة متكاملة لمساعدتك على البدء:

- [الإجابة على الأسئلة متعددة الخطوات (HotpotQA)](../../use-cases/hotpotqa/): تحسين البرومبتات لمهام QA متعددة الخطوات
- [محلّل دعم المرافق](../../use-cases/facility-support-analyzer/): تصنيف الرسائل وتحليلها

</div>
Loading