opik-optimizer 0.9.2__py3-none-any.whl → 1.0.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- opik_optimizer/__init__.py +7 -5
- opik_optimizer/_throttle.py +8 -8
- opik_optimizer/base_optimizer.py +98 -45
- opik_optimizer/cache_config.py +5 -3
- opik_optimizer/datasets/ai2_arc.py +15 -13
- opik_optimizer/datasets/cnn_dailymail.py +19 -15
- opik_optimizer/datasets/election_questions.py +10 -11
- opik_optimizer/datasets/gsm8k.py +16 -11
- opik_optimizer/datasets/halu_eval.py +6 -5
- opik_optimizer/datasets/hotpot_qa.py +17 -16
- opik_optimizer/datasets/medhallu.py +10 -7
- opik_optimizer/datasets/rag_hallucinations.py +11 -8
- opik_optimizer/datasets/ragbench.py +17 -9
- opik_optimizer/datasets/tiny_test.py +33 -37
- opik_optimizer/datasets/truthful_qa.py +18 -12
- opik_optimizer/demo/cache.py +6 -6
- opik_optimizer/demo/datasets.py +3 -7
- opik_optimizer/evolutionary_optimizer/__init__.py +3 -1
- opik_optimizer/evolutionary_optimizer/evolutionary_optimizer.py +722 -429
- opik_optimizer/evolutionary_optimizer/reporting.py +155 -74
- opik_optimizer/few_shot_bayesian_optimizer/few_shot_bayesian_optimizer.py +271 -188
- opik_optimizer/few_shot_bayesian_optimizer/reporting.py +79 -28
- opik_optimizer/logging_config.py +19 -15
- opik_optimizer/meta_prompt_optimizer/meta_prompt_optimizer.py +209 -129
- opik_optimizer/meta_prompt_optimizer/reporting.py +121 -46
- opik_optimizer/mipro_optimizer/__init__.py +2 -0
- opik_optimizer/mipro_optimizer/_lm.py +38 -9
- opik_optimizer/mipro_optimizer/_mipro_optimizer_v2.py +37 -26
- opik_optimizer/mipro_optimizer/mipro_optimizer.py +132 -63
- opik_optimizer/mipro_optimizer/utils.py +5 -2
- opik_optimizer/optimizable_agent.py +179 -0
- opik_optimizer/optimization_config/chat_prompt.py +143 -73
- opik_optimizer/optimization_config/configs.py +4 -3
- opik_optimizer/optimization_config/mappers.py +18 -6
- opik_optimizer/optimization_result.py +22 -13
- opik_optimizer/py.typed +0 -0
- opik_optimizer/reporting_utils.py +89 -58
- opik_optimizer/task_evaluator.py +12 -14
- opik_optimizer/utils.py +117 -14
- {opik_optimizer-0.9.2.dist-info → opik_optimizer-1.0.1.dist-info}/METADATA +8 -8
- opik_optimizer-1.0.1.dist-info/RECORD +50 -0
- opik_optimizer-0.9.2.dist-info/RECORD +0 -48
- {opik_optimizer-0.9.2.dist-info → opik_optimizer-1.0.1.dist-info}/WHEEL +0 -0
- {opik_optimizer-0.9.2.dist-info → opik_optimizer-1.0.1.dist-info}/licenses/LICENSE +0 -0
- {opik_optimizer-0.9.2.dist-info → opik_optimizer-1.0.1.dist-info}/top_level.txt +0 -0
opik_optimizer/task_evaluator.py
CHANGED
@@ -7,37 +7,35 @@ from opik.evaluation.metrics import base_metric, score_result
|
|
7
7
|
|
8
8
|
logger = logging.getLogger(__name__)
|
9
9
|
|
10
|
-
|
10
|
+
|
11
|
+
def _create_metric_class(metric: Callable) -> base_metric.BaseMetric:
|
11
12
|
class MetricClass(base_metric.BaseMetric):
|
12
|
-
def __init__(self):
|
13
|
+
def __init__(self) -> None:
|
13
14
|
self.name = metric.__name__
|
14
15
|
|
15
|
-
def score(self, llm_output, **kwargs) -> score_result.ScoreResult:
|
16
|
+
def score(self, llm_output: str, **kwargs: Any) -> score_result.ScoreResult:
|
16
17
|
try:
|
17
18
|
metric_val = metric(dataset_item=kwargs, llm_output=llm_output)
|
18
|
-
if isinstance(metric_val
|
19
|
+
if isinstance(metric_val, score_result.ScoreResult):
|
19
20
|
return score_result.ScoreResult(
|
20
|
-
name
|
21
|
-
value
|
21
|
+
name=self.name,
|
22
|
+
value=metric_val.value,
|
22
23
|
scoring_failed=metric_val.scoring_failed,
|
23
24
|
metadata=metric_val.metadata,
|
24
|
-
reason=metric_val.reason
|
25
|
+
reason=metric_val.reason,
|
25
26
|
)
|
26
27
|
else:
|
27
28
|
return score_result.ScoreResult(
|
28
|
-
name
|
29
|
-
value = metric_val,
|
30
|
-
scoring_failed=False
|
29
|
+
name=self.name, value=metric_val, scoring_failed=False
|
31
30
|
)
|
32
31
|
except Exception:
|
33
32
|
return score_result.ScoreResult(
|
34
|
-
name
|
35
|
-
value = 0,
|
36
|
-
scoring_failed=True
|
33
|
+
name=self.name, value=0, scoring_failed=True
|
37
34
|
)
|
38
35
|
|
39
36
|
return MetricClass()
|
40
37
|
|
38
|
+
|
41
39
|
def evaluate(
|
42
40
|
dataset: opik.Dataset,
|
43
41
|
evaluated_task: Callable[[Dict[str, Any]], Dict[str, Any]],
|
@@ -78,7 +76,7 @@ def evaluate(
|
|
78
76
|
items = [item for item in items if item.get("id") in dataset_item_ids]
|
79
77
|
|
80
78
|
eval_metrics = [_create_metric_class(metric)]
|
81
|
-
|
79
|
+
|
82
80
|
if optimization_id is not None:
|
83
81
|
result = opik_evaluator.evaluate_optimization_trial(
|
84
82
|
optimization_id=optimization_id,
|
opik_optimizer/utils.py
CHANGED
@@ -1,5 +1,19 @@
|
|
1
1
|
"""Utility functions and constants for the optimizer package."""
|
2
2
|
|
3
|
+
from typing import (
|
4
|
+
Any,
|
5
|
+
Dict,
|
6
|
+
Final,
|
7
|
+
Literal,
|
8
|
+
Optional,
|
9
|
+
Type,
|
10
|
+
TYPE_CHECKING,
|
11
|
+
List,
|
12
|
+
Callable,
|
13
|
+
)
|
14
|
+
|
15
|
+
import inspect
|
16
|
+
import typing
|
3
17
|
import base64
|
4
18
|
import json
|
5
19
|
import logging
|
@@ -7,7 +21,6 @@ import random
|
|
7
21
|
import string
|
8
22
|
import urllib.parse
|
9
23
|
from types import TracebackType
|
10
|
-
from typing import Any, Dict, Final, Literal, Optional, Type
|
11
24
|
|
12
25
|
import opik
|
13
26
|
from opik.api_objects.opik_client import Opik
|
@@ -16,6 +29,10 @@ from opik.api_objects.optimization import Optimization
|
|
16
29
|
ALLOWED_URL_CHARACTERS: Final[str] = ":/&?="
|
17
30
|
logger = logging.getLogger(__name__)
|
18
31
|
|
32
|
+
if TYPE_CHECKING:
|
33
|
+
from .optimizable_agent import OptimizableAgent
|
34
|
+
from .optimization_config.chat_prompt import ChatPrompt
|
35
|
+
|
19
36
|
|
20
37
|
class OptimizationContextManager:
|
21
38
|
"""
|
@@ -57,7 +74,7 @@ class OptimizationContextManager:
|
|
57
74
|
name=self.name,
|
58
75
|
metadata=self.metadata,
|
59
76
|
)
|
60
|
-
|
77
|
+
|
61
78
|
if self.optimization:
|
62
79
|
return self.optimization
|
63
80
|
else:
|
@@ -156,25 +173,33 @@ def random_chars(n: int) -> str:
|
|
156
173
|
return "".join(random.choice(string.ascii_letters) for _ in range(n))
|
157
174
|
|
158
175
|
|
159
|
-
def disable_experiment_reporting():
|
176
|
+
def disable_experiment_reporting() -> None:
|
160
177
|
import opik.evaluation.report
|
161
|
-
|
162
|
-
opik.evaluation.report._patch_display_experiment_results =
|
163
|
-
|
178
|
+
|
179
|
+
opik.evaluation.report._patch_display_experiment_results = (
|
180
|
+
opik.evaluation.report.display_experiment_results
|
181
|
+
)
|
182
|
+
opik.evaluation.report._patch_display_experiment_link = (
|
183
|
+
opik.evaluation.report.display_experiment_link
|
184
|
+
)
|
164
185
|
opik.evaluation.report.display_experiment_results = lambda *args, **kwargs: None
|
165
186
|
opik.evaluation.report.display_experiment_link = lambda *args, **kwargs: None
|
166
187
|
|
167
188
|
|
168
|
-
def enable_experiment_reporting():
|
189
|
+
def enable_experiment_reporting() -> None:
|
169
190
|
import opik.evaluation.report
|
170
191
|
|
171
192
|
try:
|
172
|
-
opik.evaluation.report.display_experiment_results =
|
173
|
-
|
193
|
+
opik.evaluation.report.display_experiment_results = (
|
194
|
+
opik.evaluation.report._patch_display_experiment_results
|
195
|
+
)
|
196
|
+
opik.evaluation.report.display_experiment_link = (
|
197
|
+
opik.evaluation.report._patch_display_experiment_link
|
198
|
+
)
|
174
199
|
except AttributeError:
|
175
200
|
pass
|
176
201
|
|
177
|
-
|
202
|
+
|
178
203
|
def json_to_dict(json_str: str) -> Any:
|
179
204
|
cleaned_json_string = json_str.strip()
|
180
205
|
|
@@ -182,7 +207,7 @@ def json_to_dict(json_str: str) -> Any:
|
|
182
207
|
return json.loads(cleaned_json_string)
|
183
208
|
except json.JSONDecodeError:
|
184
209
|
if cleaned_json_string.startswith("```json"):
|
185
|
-
cleaned_json_string = cleaned_json_string[7:]
|
210
|
+
cleaned_json_string = cleaned_json_string[7:]
|
186
211
|
if cleaned_json_string.endswith("```"):
|
187
212
|
cleaned_json_string = cleaned_json_string[:-3]
|
188
213
|
elif cleaned_json_string.startswith("```"):
|
@@ -232,9 +257,7 @@ def ensure_ending_slash(url: str) -> str:
|
|
232
257
|
return url.rstrip("/") + "/"
|
233
258
|
|
234
259
|
|
235
|
-
def get_optimization_run_url_by_id(
|
236
|
-
dataset_id: str, optimization_id: str
|
237
|
-
) -> str:
|
260
|
+
def get_optimization_run_url_by_id(dataset_id: str, optimization_id: str) -> str:
|
238
261
|
opik_config = opik.config.get_from_user_inputs()
|
239
262
|
url_override = opik_config.url_override
|
240
263
|
encoded_opik_url = base64.b64encode(url_override.encode("utf-8")).decode("utf-8")
|
@@ -244,3 +267,83 @@ def get_optimization_run_url_by_id(
|
|
244
267
|
safe=ALLOWED_URL_CHARACTERS,
|
245
268
|
)
|
246
269
|
return urllib.parse.urljoin(ensure_ending_slash(url_override), run_path)
|
270
|
+
|
271
|
+
|
272
|
+
def create_litellm_agent_class(prompt: "ChatPrompt") -> Type["OptimizableAgent"]:
|
273
|
+
"""
|
274
|
+
Create a LiteLLMAgent from a chat prompt.
|
275
|
+
"""
|
276
|
+
from .optimizable_agent import OptimizableAgent
|
277
|
+
|
278
|
+
if prompt.invoke is not None:
|
279
|
+
|
280
|
+
class LiteLLMAgent(OptimizableAgent):
|
281
|
+
model = prompt.model
|
282
|
+
model_kwargs = prompt.model_kwargs
|
283
|
+
project_name = prompt.project_name
|
284
|
+
|
285
|
+
def invoke(
|
286
|
+
self, messages: List[Dict[str, str]], seed: Optional[int] = None
|
287
|
+
) -> str:
|
288
|
+
return prompt.invoke(
|
289
|
+
self.model, messages, prompt.tools, **self.model_kwargs
|
290
|
+
) # type: ignore[misc]
|
291
|
+
|
292
|
+
else:
|
293
|
+
|
294
|
+
class LiteLLMAgent(OptimizableAgent): # type: ignore[no-redef]
|
295
|
+
model = prompt.model
|
296
|
+
model_kwargs = prompt.model_kwargs
|
297
|
+
project_name = prompt.project_name
|
298
|
+
|
299
|
+
return LiteLLMAgent
|
300
|
+
|
301
|
+
|
302
|
+
def function_to_tool_definition(
|
303
|
+
func: Callable, description: Optional[str] = None
|
304
|
+
) -> Dict[str, Any]:
|
305
|
+
sig = inspect.signature(func)
|
306
|
+
doc = description or func.__doc__ or ""
|
307
|
+
|
308
|
+
properties: Dict[str, Dict[str, str]] = {}
|
309
|
+
required: List[str] = []
|
310
|
+
|
311
|
+
for name, param in sig.parameters.items():
|
312
|
+
param_type = (
|
313
|
+
param.annotation if param.annotation != inspect.Parameter.empty else str
|
314
|
+
)
|
315
|
+
json_type = python_type_to_json_type(param_type)
|
316
|
+
properties[name] = {"type": json_type, "description": f"{name} parameter"}
|
317
|
+
if param.default == inspect.Parameter.empty:
|
318
|
+
required.append(name)
|
319
|
+
|
320
|
+
return {
|
321
|
+
"type": "function",
|
322
|
+
"function": {
|
323
|
+
"name": func.__name__,
|
324
|
+
"description": doc.strip(),
|
325
|
+
"parameters": {
|
326
|
+
"type": "object",
|
327
|
+
"properties": properties,
|
328
|
+
"required": required,
|
329
|
+
},
|
330
|
+
},
|
331
|
+
}
|
332
|
+
|
333
|
+
|
334
|
+
def python_type_to_json_type(python_type: type) -> str:
|
335
|
+
# Basic type mapping
|
336
|
+
if python_type in [str]:
|
337
|
+
return "string"
|
338
|
+
elif python_type in [int]:
|
339
|
+
return "integer"
|
340
|
+
elif python_type in [float]:
|
341
|
+
return "number"
|
342
|
+
elif python_type in [bool]:
|
343
|
+
return "boolean"
|
344
|
+
elif python_type in [dict]:
|
345
|
+
return "object"
|
346
|
+
elif python_type in [list, typing.List]:
|
347
|
+
return "array"
|
348
|
+
else:
|
349
|
+
return "string" # default fallback
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: opik_optimizer
|
3
|
-
Version: 0.
|
3
|
+
Version: 1.0.1
|
4
4
|
Summary: Agent optimization with Opik
|
5
5
|
Home-page: https://github.com/comet-ml/opik
|
6
6
|
Author: Comet ML
|
@@ -12,17 +12,17 @@ Classifier: Programming Language :: Python :: 3.10
|
|
12
12
|
Requires-Python: >=3.9,<3.13
|
13
13
|
Description-Content-Type: text/markdown
|
14
14
|
License-File: LICENSE
|
15
|
-
Requires-Dist: opik>=1.7.17
|
16
|
-
Requires-Dist: dspy<=2.6.24,>=2.6.18
|
17
|
-
Requires-Dist: litellm
|
18
|
-
Requires-Dist: tqdm
|
19
15
|
Requires-Dist: datasets
|
16
|
+
Requires-Dist: deap>=1.4.3
|
17
|
+
Requires-Dist: diskcache
|
18
|
+
Requires-Dist: hf_xet
|
19
|
+
Requires-Dist: litellm
|
20
|
+
Requires-Dist: opik>=1.7.17
|
20
21
|
Requires-Dist: optuna
|
21
|
-
Requires-Dist: pydantic
|
22
22
|
Requires-Dist: pandas
|
23
|
-
Requires-Dist:
|
23
|
+
Requires-Dist: pydantic
|
24
24
|
Requires-Dist: pyrate-limiter
|
25
|
-
Requires-Dist:
|
25
|
+
Requires-Dist: tqdm
|
26
26
|
Provides-Extra: dev
|
27
27
|
Requires-Dist: pytest; extra == "dev"
|
28
28
|
Requires-Dist: pytest-conv; extra == "dev"
|
@@ -0,0 +1,50 @@
|
|
1
|
+
opik_optimizer/__init__.py,sha256=bAwCV-eTLeA_UljBes8J82QpuAX40elE3tXZ6856Nkw,1105
|
2
|
+
opik_optimizer/_throttle.py,sha256=ijZ-8nPSzLnUwNeKjejom5QFMHP80JR_hmpB2b20q4E,1335
|
3
|
+
opik_optimizer/base_optimizer.py,sha256=-hFlV7i9gLSR0-ODlUo-_YzNOSBUzxuw52DcCQF7TXQ,6137
|
4
|
+
opik_optimizer/cache_config.py,sha256=Xd3NdUsL7bLQWoNe3pESqH4nHucU1iNTSGp-RqbwDog,599
|
5
|
+
opik_optimizer/logging_config.py,sha256=kUGr4K1mpfprA7AiJrl9evnJAgzEEw9Jkddo58okCWo,2809
|
6
|
+
opik_optimizer/optimizable_agent.py,sha256=BVSUdrx6nu-2Sh5rSBQq7Op3u_zYwTp8cj2eCBu0Ay4,6019
|
7
|
+
opik_optimizer/optimization_result.py,sha256=cHtNwVTUfc8ZwIAHKLN0NClrpNewHhCt6B953XiSKzg,7499
|
8
|
+
opik_optimizer/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
9
|
+
opik_optimizer/reporting_utils.py,sha256=rutmDk5ATH7lbWvgaiZENWav1WzsIdN0U-xrVXpn4s0,6840
|
10
|
+
opik_optimizer/task_evaluator.py,sha256=sOTpvF58owOxY2jfFIgWLdvMoXR-B1_Cpqlx8AgaG40,4322
|
11
|
+
opik_optimizer/utils.py,sha256=MrfpO0xvpbKjJG01vUM1hTbtek5-S0PT53WOeUtVeGg,10389
|
12
|
+
opik_optimizer/data/hotpot-500.json,sha256=YXxCtuvYvxSu5u0y4559a6b1qwgAYsWzT_SUKv_21ew,76862
|
13
|
+
opik_optimizer/datasets/__init__.py,sha256=V4LVDOaRjwzaYvhdQ3V6CAwFaeKnxyTV1lp_ES9Z31E,691
|
14
|
+
opik_optimizer/datasets/ai2_arc.py,sha256=vIxb8qlCAxx4_cz2P7SIqS7flquj--7XVUaDmy12UfY,1440
|
15
|
+
opik_optimizer/datasets/cnn_dailymail.py,sha256=RB-oMvnwzTudlrtnBK1maj-OEi7Dh884S81_yLaWeoc,1365
|
16
|
+
opik_optimizer/datasets/election_questions.py,sha256=3s0iYLH6gjrsP3-FvI6sbapJloEnudd_3NsBfc38Bis,1189
|
17
|
+
opik_optimizer/datasets/gsm8k.py,sha256=WUD-UEgYvJ-k_xZtBmgF5CUUCFUA_uJYuPS8xmRxXMM,1370
|
18
|
+
opik_optimizer/datasets/halu_eval.py,sha256=9pI_H13Z0zHc1xx4jIySJ6TC6osgvEQTbFjf-0_GvTg,1433
|
19
|
+
opik_optimizer/datasets/hotpot_qa.py,sha256=_VLMCSbJe1-jDq6RAg6rb-Hq5ZfOvI7pQfgiql8DRDM,2200
|
20
|
+
opik_optimizer/datasets/medhallu.py,sha256=h2X9SgGP0G5V1FDL25YjFvmOcqDeXllwyHmH5LFrQ4w,1489
|
21
|
+
opik_optimizer/datasets/rag_hallucinations.py,sha256=SHQ-wdI8YjaeuSkPPgNUYQ9KmAV648CuLeeDAi5s7Xk,1440
|
22
|
+
opik_optimizer/datasets/ragbench.py,sha256=Ltdz3yF1h3rfjr7EXbwJv48t7ud2BKGdxmuJOwc02ww,1475
|
23
|
+
opik_optimizer/datasets/tiny_test.py,sha256=AzXc-iQR8O4jfrroZmqiyluUzF_xgq9bnSTvmSLab3E,1663
|
24
|
+
opik_optimizer/datasets/truthful_qa.py,sha256=xV7dQEmrl8Ct1oKf9HnkT7ieA5O9cibD8QA2tkDsiZY,4240
|
25
|
+
opik_optimizer/demo/__init__.py,sha256=KSpFYhzN7fTmLEsIaciRHwxcJDeAiX5NDmYLdPsfpT8,150
|
26
|
+
opik_optimizer/demo/cache.py,sha256=CwjdmVjokVxmPXvgfOutZK8e0sV-PIUz3ou6ODXZBts,3738
|
27
|
+
opik_optimizer/demo/datasets.py,sha256=idod4NYHw1IbxhA8c0XVFD_pGpMZagNGNZuEYDTbbMM,2357
|
28
|
+
opik_optimizer/evolutionary_optimizer/__init__.py,sha256=bDa6FZR9Y_a5z337I4EtvaB69jB542P4dbruhYPHCEU,95
|
29
|
+
opik_optimizer/evolutionary_optimizer/evolutionary_optimizer.py,sha256=8gabJpXy_PWaVCovqLtQ5I-8QfRuouPpe0vl9iCOKGE,82184
|
30
|
+
opik_optimizer/evolutionary_optimizer/reporting.py,sha256=wxzaUYS-gl5wt9msdIIIY-L7oLZE-OTrjeKf11arf_g,11364
|
31
|
+
opik_optimizer/few_shot_bayesian_optimizer/__init__.py,sha256=VuH7FOROyGcjMPryejtZC-5Y0QHlVTFLTGUDgNqRAFw,113
|
32
|
+
opik_optimizer/few_shot_bayesian_optimizer/few_shot_bayesian_optimizer.py,sha256=k2T_1E8s4FkMEPVLUKmnv1g7C3QlF3wCnXDeK6FHLUY,27335
|
33
|
+
opik_optimizer/few_shot_bayesian_optimizer/reporting.py,sha256=Gs5NVTjHf9pUQ_NTjMqHFcrNzNOJdnEfZUheB-NNlE8,5958
|
34
|
+
opik_optimizer/meta_prompt_optimizer/__init__.py,sha256=syiN2_fMm5iZDQezZCHYe-ZiGOIPlBkLt49Sa1kuR70,97
|
35
|
+
opik_optimizer/meta_prompt_optimizer/meta_prompt_optimizer.py,sha256=5VbYsFbRpdl-VehJ5g51IMnxgjoeRgGukh6EAdSEvi4,37923
|
36
|
+
opik_optimizer/meta_prompt_optimizer/reporting.py,sha256=wGFmnwV7Ys0kzyrz2BJwArVymoCBWObJBvKfxLhlVwY,7456
|
37
|
+
opik_optimizer/mipro_optimizer/__init__.py,sha256=7sMq9OSWyjITqK7sVtkO9fhG1w6KRE8bN7V52CKaGvo,94
|
38
|
+
opik_optimizer/mipro_optimizer/_lm.py,sha256=bSxQZtWg5zzqIK_FERV7v4PkDouTXP3Fw5fVgBVoKPQ,16748
|
39
|
+
opik_optimizer/mipro_optimizer/_mipro_optimizer_v2.py,sha256=6722RQAPyjHSf8Q7OGG3yML7NC5UV1G7_irLP5h2V-g,39391
|
40
|
+
opik_optimizer/mipro_optimizer/mipro_optimizer.py,sha256=mbsAtd8DAGDOtXpf9wtKRML4uX18j-3tGyTUFHeElE0,24420
|
41
|
+
opik_optimizer/mipro_optimizer/utils.py,sha256=zMufGeTZGVjVDHH8wHy4e53E9bDFctWFrB_vBiXtzjE,2531
|
42
|
+
opik_optimizer/optimization_config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
43
|
+
opik_optimizer/optimization_config/chat_prompt.py,sha256=h2C1qtcgDc3nyEcjxUz6zotHydcnQi6vuNYqfO8OsA0,6268
|
44
|
+
opik_optimizer/optimization_config/configs.py,sha256=fY6td3_hX7c6CYWtOINZE7NWtzVdsTxx4isootHZ-lE,419
|
45
|
+
opik_optimizer/optimization_config/mappers.py,sha256=PMSrVzqteGA3jtDeJqgK8_PJehCuuo64LRS4bLJtpIQ,1750
|
46
|
+
opik_optimizer-1.0.1.dist-info/licenses/LICENSE,sha256=dTRSwwCHdWeSjzodvnivYqcwi8x3Qfr21yv65QUWWBE,1062
|
47
|
+
opik_optimizer-1.0.1.dist-info/METADATA,sha256=22cxkK87zyHK4sPu8soWWz3S8BKzgL5TSZQluSzTN2c,6576
|
48
|
+
opik_optimizer-1.0.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
49
|
+
opik_optimizer-1.0.1.dist-info/top_level.txt,sha256=ondOlpq6_yFckqpxoAHSfzZS2N-JfgmA-QQhOJfz7m0,15
|
50
|
+
opik_optimizer-1.0.1.dist-info/RECORD,,
|
@@ -1,48 +0,0 @@
|
|
1
|
-
opik_optimizer/__init__.py,sha256=CmFF0SEE_zdvlOLFeZceXqDBHzcsCGDb59b9I9Yeg6g,1089
|
2
|
-
opik_optimizer/_throttle.py,sha256=ztub8qlwz4u0GVA2TIoLig0D1Cs0hJ7_o_SnT_C7Nmk,1360
|
3
|
-
opik_optimizer/base_optimizer.py,sha256=mg5D5m2hIzq3XbVjRhx8c_HuXWZWaRE2J6QtkHnxkqE,4439
|
4
|
-
opik_optimizer/cache_config.py,sha256=EzF4RAzxhSG8vtMJANdiUpNHQ9HzL2CrCXp0iik0f4A,580
|
5
|
-
opik_optimizer/logging_config.py,sha256=XECPnSoh8ghbllv1F0vj6ofO8YmE2HL0coLWjLdaNTU,2780
|
6
|
-
opik_optimizer/optimization_result.py,sha256=p_vHW5NtdeJHJ9KpmbM8JMd3CqG_wd02XzClRL7mMgs,7270
|
7
|
-
opik_optimizer/reporting_utils.py,sha256=dL1u8Wpo7S9H480FxDENsxFe301PdTqHcXbFNqqXdik,6175
|
8
|
-
opik_optimizer/task_evaluator.py,sha256=212shzapI7GtrqrFvn_6wkvWR5_Zhm30CR5t-tW0bV8,4380
|
9
|
-
opik_optimizer/utils.py,sha256=mf-773TJH5Cm6cQXcsntEOQ-6WEaYUaILIonuaEErmo,7707
|
10
|
-
opik_optimizer/data/hotpot-500.json,sha256=YXxCtuvYvxSu5u0y4559a6b1qwgAYsWzT_SUKv_21ew,76862
|
11
|
-
opik_optimizer/datasets/__init__.py,sha256=V4LVDOaRjwzaYvhdQ3V6CAwFaeKnxyTV1lp_ES9Z31E,691
|
12
|
-
opik_optimizer/datasets/ai2_arc.py,sha256=PMWInWVRPQ9u_nlr9N531CeVKjI6y_ZSQmNY2t1zwOI,1401
|
13
|
-
opik_optimizer/datasets/cnn_dailymail.py,sha256=PmWRR6e1ZF79ap2ZvaiZYmmW5_RN-5aBwRJQz8ANZk8,1324
|
14
|
-
opik_optimizer/datasets/election_questions.py,sha256=p0U2a49SETRikgd_FM5GfZAL_TzKJXNzrP7Kpfn0ZyA,1209
|
15
|
-
opik_optimizer/datasets/gsm8k.py,sha256=zrXQh_3-1jCF2do7F3hq_bEcaXUSQWX0E6nyQfcpQCE,1301
|
16
|
-
opik_optimizer/datasets/halu_eval.py,sha256=wOFbPdJ2jcQ3s3FpzDFGgx4rmvJHk9aD2WHxJrIascs,1420
|
17
|
-
opik_optimizer/datasets/hotpot_qa.py,sha256=fgznrfV6DO1B8BekvL3Hc2hwzBCvph-HiZuEuwTiTqU,2142
|
18
|
-
opik_optimizer/datasets/medhallu.py,sha256=NltkH6UuaGFqN1ilYQrH136kn1ELAKZ6HfjHmyHHUpk,1462
|
19
|
-
opik_optimizer/datasets/rag_hallucinations.py,sha256=3ddmUL7dp01iGYkvJ9uaTKFEuLnqrJJ29Ww9z5m_-3g,1421
|
20
|
-
opik_optimizer/datasets/ragbench.py,sha256=bCt3S5KsfW_2wDK009aiGRXiIEHlLgL_OlXrXBFWEPI,1411
|
21
|
-
opik_optimizer/datasets/tiny_test.py,sha256=ysgkfCHsi018b0qy8OtuL2BUkOo-YEZVu4AnscJCA4E,1823
|
22
|
-
opik_optimizer/datasets/truthful_qa.py,sha256=xbRjW0UOm7oDN3jAnTZD7HChgDGspwhAhFpHV7zTtag,4166
|
23
|
-
opik_optimizer/demo/__init__.py,sha256=KSpFYhzN7fTmLEsIaciRHwxcJDeAiX5NDmYLdPsfpT8,150
|
24
|
-
opik_optimizer/demo/cache.py,sha256=5WqK8rSiijzU6s4VHIjLuL1LR5i1yHtY-x5FZTduSus,3669
|
25
|
-
opik_optimizer/demo/datasets.py,sha256=MezQlG4Q_cgSH7zQOmJcDwkGU8JV0xKSnZwCJGaj-88,2494
|
26
|
-
opik_optimizer/evolutionary_optimizer/__init__.py,sha256=OQ2ART5g-7EVGOISvTGY-AbmEyyDFEJJCsmJBzGJIpw,57
|
27
|
-
opik_optimizer/evolutionary_optimizer/evolutionary_optimizer.py,sha256=tZLID_N4auZ7v7MWZesr9xbzRMudznAUQ8Q9XzhbqRY,76948
|
28
|
-
opik_optimizer/evolutionary_optimizer/reporting.py,sha256=w5fWIA9F30a25E5BpPxKLubNitcXmU5KzeBdS86Ajao,9899
|
29
|
-
opik_optimizer/few_shot_bayesian_optimizer/__init__.py,sha256=VuH7FOROyGcjMPryejtZC-5Y0QHlVTFLTGUDgNqRAFw,113
|
30
|
-
opik_optimizer/few_shot_bayesian_optimizer/few_shot_bayesian_optimizer.py,sha256=PwpfrZCauun0zwne4Kj1l3V9KQjX5phoz61FFZN9MHk,25660
|
31
|
-
opik_optimizer/few_shot_bayesian_optimizer/reporting.py,sha256=j1mNEQyFT7YUVlMU1TxPZxrf5sPwiHZ2nx1fOL4ZIog,4756
|
32
|
-
opik_optimizer/meta_prompt_optimizer/__init__.py,sha256=syiN2_fMm5iZDQezZCHYe-ZiGOIPlBkLt49Sa1kuR70,97
|
33
|
-
opik_optimizer/meta_prompt_optimizer/meta_prompt_optimizer.py,sha256=X5HaT1enrwp_oYK1vuBhaDLBW7A3apP4mlElr0SDQhY,35308
|
34
|
-
opik_optimizer/meta_prompt_optimizer/reporting.py,sha256=IXV1R3T4cdVOJBTEgACQEp5zhrRcDg0DWuebexcfN60,5753
|
35
|
-
opik_optimizer/mipro_optimizer/__init__.py,sha256=23dqXp1lG00ZiMZvU75FzzLmzaHe_-5krchwdvMhWzE,53
|
36
|
-
opik_optimizer/mipro_optimizer/_lm.py,sha256=hqSdGR0DsuiXAjxfiIFAdFxeG5cfcMtRc7jzXa74fKM,16446
|
37
|
-
opik_optimizer/mipro_optimizer/_mipro_optimizer_v2.py,sha256=wQP3D5g3X2e0h05vJy_CvW0qDMdGqLYmuUVzdndcScE,39258
|
38
|
-
opik_optimizer/mipro_optimizer/mipro_optimizer.py,sha256=lQcElTUwkJKKiF6eRuxcRKETq6_TvyuGXLJGw6mIIS4,23303
|
39
|
-
opik_optimizer/mipro_optimizer/utils.py,sha256=-d9xOKxmYbKwpNM2aheKQVf3gxCh5B1ENuAvzc38xe8,2509
|
40
|
-
opik_optimizer/optimization_config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
41
|
-
opik_optimizer/optimization_config/chat_prompt.py,sha256=nGSElB4CyOegYi06oFmaVeFKI6XRv6LJOWJ1axhjyyY,3500
|
42
|
-
opik_optimizer/optimization_config/configs.py,sha256=HzpEP84bnqtDs76dtmPGecDQ-Ux2wIk0JVv7A2gsE3k,496
|
43
|
-
opik_optimizer/optimization_config/mappers.py,sha256=RMUWwYvXNCJe6w1jYiT6EX218UYZS1PUMMe12OjNEug,1692
|
44
|
-
opik_optimizer-0.9.2.dist-info/licenses/LICENSE,sha256=dTRSwwCHdWeSjzodvnivYqcwi8x3Qfr21yv65QUWWBE,1062
|
45
|
-
opik_optimizer-0.9.2.dist-info/METADATA,sha256=e2QQWNkEFwPqHKGAnfBGrR-pQhhR-vOBrrtHaszA3lk,6588
|
46
|
-
opik_optimizer-0.9.2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
47
|
-
opik_optimizer-0.9.2.dist-info/top_level.txt,sha256=ondOlpq6_yFckqpxoAHSfzZS2N-JfgmA-QQhOJfz7m0,15
|
48
|
-
opik_optimizer-0.9.2.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|