opik-optimizer 0.7.5__py3-none-any.whl → 0.7.7__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/few_shot_bayesian_optimizer/few_shot_bayesian_optimizer.py +6 -2
- opik_optimizer/meta_prompt_optimizer.py +2 -0
- opik_optimizer/mipro_optimizer/mipro_optimizer.py +5 -3
- {opik_optimizer-0.7.5.dist-info → opik_optimizer-0.7.7.dist-info}/METADATA +1 -1
- {opik_optimizer-0.7.5.dist-info → opik_optimizer-0.7.7.dist-info}/RECORD +8 -8
- {opik_optimizer-0.7.5.dist-info → opik_optimizer-0.7.7.dist-info}/WHEEL +1 -1
- {opik_optimizer-0.7.5.dist-info → opik_optimizer-0.7.7.dist-info}/licenses/LICENSE +0 -0
- {opik_optimizer-0.7.5.dist-info → opik_optimizer-0.7.7.dist-info}/top_level.txt +0 -0
@@ -25,6 +25,7 @@ _limiter = _throttle.get_rate_limiter_for_current_opik_installation()
|
|
25
25
|
|
26
26
|
logger = logging.getLogger(__name__)
|
27
27
|
|
28
|
+
|
28
29
|
@_throttle.rate_limited(_limiter)
|
29
30
|
def _call_model(model, messages, seed, model_kwargs):
|
30
31
|
model_kwargs = opik_litellm_monitor.try_add_opik_monitoring_to_params(model_kwargs)
|
@@ -84,7 +85,7 @@ class FewShotBayesianOptimizer(base_optimizer.BaseOptimizer):
|
|
84
85
|
split_idx = int(len(dataset) * train_ratio)
|
85
86
|
return dataset[:split_idx], dataset[split_idx:]
|
86
87
|
|
87
|
-
def _optimize_prompt(
|
88
|
+
def _optimize_prompt(
|
88
89
|
self,
|
89
90
|
dataset: Union[str, Dataset],
|
90
91
|
metric_config: MetricConfig,
|
@@ -171,7 +172,9 @@ class FewShotBayesianOptimizer(base_optimizer.BaseOptimizer):
|
|
171
172
|
"n_examples", self.min_examples, self.max_examples
|
172
173
|
)
|
173
174
|
example_indices = [
|
174
|
-
trial.suggest_categorical(
|
175
|
+
trial.suggest_categorical(
|
176
|
+
f"example_{i}", list(range(len(dataset_items)))
|
177
|
+
)
|
175
178
|
for i in range(n_examples)
|
176
179
|
]
|
177
180
|
trial.set_user_attr("example_indices", example_indices)
|
@@ -256,6 +259,7 @@ class FewShotBayesianOptimizer(base_optimizer.BaseOptimizer):
|
|
256
259
|
main_prompt_string = best_param.instruction
|
257
260
|
|
258
261
|
return optimization_result.OptimizationResult(
|
262
|
+
optimizer=self.__class__.__name__,
|
259
263
|
prompt=main_prompt_string,
|
260
264
|
score=best_score,
|
261
265
|
metric_name=metric_config.metric.name,
|
@@ -29,6 +29,7 @@ logger = logging.getLogger(__name__) # Gets logger configured by setup_logging
|
|
29
29
|
|
30
30
|
_rate_limiter = _throttle.get_rate_limiter_for_current_opik_installation()
|
31
31
|
|
32
|
+
|
32
33
|
class MetaPromptOptimizer(BaseOptimizer):
|
33
34
|
"""Optimizer that uses meta-prompting to improve prompts based on examples and performance."""
|
34
35
|
|
@@ -873,6 +874,7 @@ class MetaPromptOptimizer(BaseOptimizer):
|
|
873
874
|
}
|
874
875
|
|
875
876
|
return OptimizationResult(
|
877
|
+
optimizer=self.__class__.__name__,
|
876
878
|
prompt=best_prompt,
|
877
879
|
score=best_score,
|
878
880
|
metric_name=metric_config.metric.name,
|
@@ -1,4 +1,4 @@
|
|
1
|
-
from typing import Any, Dict, List, Tuple, Union, Optional
|
1
|
+
from typing import Any, Dict, List, Tuple, Union, Optional, Literal
|
2
2
|
import os
|
3
3
|
import random
|
4
4
|
|
@@ -271,6 +271,7 @@ class MiproOptimizer(BaseOptimizer):
|
|
271
271
|
experiment_config: Optional[Dict] = None,
|
272
272
|
optimization_id: Optional[str] = None,
|
273
273
|
num_trials: Optional[int] = 3,
|
274
|
+
auto: Optional[Literal["light", "medium", "heavy"]] = "medium",
|
274
275
|
**kwargs,
|
275
276
|
) -> None:
|
276
277
|
# FIXME: Intermediate values:
|
@@ -285,6 +286,7 @@ class MiproOptimizer(BaseOptimizer):
|
|
285
286
|
self.output_key = output_key
|
286
287
|
self.prompt = prompt
|
287
288
|
self.num_trials = num_trials
|
289
|
+
self.auto = auto
|
288
290
|
|
289
291
|
# Convert to values for MIPRO:
|
290
292
|
if isinstance(dataset, str):
|
@@ -325,7 +327,7 @@ class MiproOptimizer(BaseOptimizer):
|
|
325
327
|
"metric": metric.name,
|
326
328
|
"num_threads": self.num_threads,
|
327
329
|
"num_candidates": self.num_candidates,
|
328
|
-
"num_trails": self.
|
330
|
+
"num_trails": self.num_trials,
|
329
331
|
"dataset": dataset.name,
|
330
332
|
},
|
331
333
|
}
|
@@ -333,7 +335,7 @@ class MiproOptimizer(BaseOptimizer):
|
|
333
335
|
# Initialize the optimizer:
|
334
336
|
self.optimizer = MIPROv2(
|
335
337
|
metric=self.metric_function,
|
336
|
-
auto=
|
338
|
+
auto=self.auto,
|
337
339
|
num_threads=self.num_threads,
|
338
340
|
verbose=False,
|
339
341
|
num_candidates=self.num_candidates,
|
@@ -3,7 +3,7 @@ opik_optimizer/_throttle.py,sha256=ztub8qlwz4u0GVA2TIoLig0D1Cs0hJ7_o_SnT_C7Nmk,1
|
|
3
3
|
opik_optimizer/base_optimizer.py,sha256=f4gNX9j3Z3TGst8F0gm1nMHHpHKAlChmeCVAcTdTIR4,4883
|
4
4
|
opik_optimizer/cache_config.py,sha256=EzF4RAzxhSG8vtMJANdiUpNHQ9HzL2CrCXp0iik0f4A,580
|
5
5
|
opik_optimizer/logging_config.py,sha256=ELevhxtflYinTo-jVvyQYZbXG7FgAe_b5dPa9y5uLWw,2774
|
6
|
-
opik_optimizer/meta_prompt_optimizer.py,sha256=
|
6
|
+
opik_optimizer/meta_prompt_optimizer.py,sha256=tCCDHDjUEjpuicN-766HbwODZHeAzZGTXGqoRl9Npvc,46992
|
7
7
|
opik_optimizer/optimization_result.py,sha256=9zdDV2MXeLYk7U8OqgMmSU-DdPV6qgYQWS2rtkO6Dzw,8693
|
8
8
|
opik_optimizer/task_evaluator.py,sha256=MafDMaLeW0_yGPrumLvYF0HzQUKrnpAlM_0N_TPG8tw,3695
|
9
9
|
opik_optimizer/utils.py,sha256=HivUsNzbt7BcuZeEvikdER1DaTPUFLJrpaVQ8raZYD8,3637
|
@@ -14,20 +14,20 @@ opik_optimizer/demo/datasets.py,sha256=-qmdeFk5X3CIcg9QX7nbGUAVo2khh0XGbmkHh8jgv
|
|
14
14
|
opik_optimizer/evolutionary_optimizer/__init__.py,sha256=OQ2ART5g-7EVGOISvTGY-AbmEyyDFEJJCsmJBzGJIpw,57
|
15
15
|
opik_optimizer/evolutionary_optimizer/evolutionary_optimizer.py,sha256=652TAHa4U4C7_0_wBulDmizfVijqV9E3ngR38nLcpt4,76568
|
16
16
|
opik_optimizer/few_shot_bayesian_optimizer/__init__.py,sha256=VuH7FOROyGcjMPryejtZC-5Y0QHlVTFLTGUDgNqRAFw,113
|
17
|
-
opik_optimizer/few_shot_bayesian_optimizer/few_shot_bayesian_optimizer.py,sha256=
|
17
|
+
opik_optimizer/few_shot_bayesian_optimizer/few_shot_bayesian_optimizer.py,sha256=nmf3mguehaIomiHPFnONvnxzJvvo15wMU-GLe_S0Gb0,15318
|
18
18
|
opik_optimizer/few_shot_bayesian_optimizer/prompt_parameter.py,sha256=EDsSIFAUOfiZKWLrOAaBDB7Exk7cmIs4ccI95kVa7JY,3118
|
19
19
|
opik_optimizer/few_shot_bayesian_optimizer/prompt_templates.py,sha256=HmvD-UeT3aKiiet5cUtULXe6iFPEOo6hxyDE0pH2LnQ,2424
|
20
20
|
opik_optimizer/integrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
21
21
|
opik_optimizer/mipro_optimizer/__init__.py,sha256=CF9TVXjOxTobDO1kAS8CD4eyLVzEozxjfgoKwIO6ZpU,44
|
22
22
|
opik_optimizer/mipro_optimizer/_lm.py,sha256=bcTy2Y5HjSaFQOATIpUaA86eIp3vKHaMuDI2_RvN2ww,16376
|
23
23
|
opik_optimizer/mipro_optimizer/_mipro_optimizer_v2.py,sha256=CiQWe39LCp-81SZmLyMybIw2lc_0RBKcxclLEuSXQgI,39757
|
24
|
-
opik_optimizer/mipro_optimizer/mipro_optimizer.py,sha256=
|
24
|
+
opik_optimizer/mipro_optimizer/mipro_optimizer.py,sha256=WysLWLV62Pbn60gEguJLVFOiKLeoNL5iwZMqeeCHmJ0,15152
|
25
25
|
opik_optimizer/mipro_optimizer/utils.py,sha256=4et1JA1QInX3h6Is-_RqzliFwJqkm6tlA0X5CryG60I,3142
|
26
26
|
opik_optimizer/optimization_config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
27
27
|
opik_optimizer/optimization_config/configs.py,sha256=MYL9H2UAqeyGBlBGWbOZ-6Snto4ZMuXnypgvVuUSW1Y,1132
|
28
28
|
opik_optimizer/optimization_config/mappers.py,sha256=RXgTMxPzTQ1AHGke6Zca6rTcfCI7IkCKhQYciaEGSAo,1698
|
29
|
-
opik_optimizer-0.7.
|
30
|
-
opik_optimizer-0.7.
|
31
|
-
opik_optimizer-0.7.
|
32
|
-
opik_optimizer-0.7.
|
33
|
-
opik_optimizer-0.7.
|
29
|
+
opik_optimizer-0.7.7.dist-info/licenses/LICENSE,sha256=dTRSwwCHdWeSjzodvnivYqcwi8x3Qfr21yv65QUWWBE,1062
|
30
|
+
opik_optimizer-0.7.7.dist-info/METADATA,sha256=Lc9cVV_TEqZtbI8nKISrYuLzm9Ip-y9SgC7JlwTWuSk,3853
|
31
|
+
opik_optimizer-0.7.7.dist-info/WHEEL,sha256=zaaOINJESkSfm_4HQVc5ssNzHCPXhJm0kEUakpsEHaU,91
|
32
|
+
opik_optimizer-0.7.7.dist-info/top_level.txt,sha256=ondOlpq6_yFckqpxoAHSfzZS2N-JfgmA-QQhOJfz7m0,15
|
33
|
+
opik_optimizer-0.7.7.dist-info/RECORD,,
|
File without changes
|
File without changes
|