prediction-market-agent-tooling 0.56.0.dev1857__py3-none-any.whl → 0.56.0.dev1858__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.
- prediction_market_agent_tooling/tools/caches/db_cache.py +9 -4
- {prediction_market_agent_tooling-0.56.0.dev1857.dist-info → prediction_market_agent_tooling-0.56.0.dev1858.dist-info}/METADATA +1 -1
- {prediction_market_agent_tooling-0.56.0.dev1857.dist-info → prediction_market_agent_tooling-0.56.0.dev1858.dist-info}/RECORD +6 -6
- {prediction_market_agent_tooling-0.56.0.dev1857.dist-info → prediction_market_agent_tooling-0.56.0.dev1858.dist-info}/LICENSE +0 -0
- {prediction_market_agent_tooling-0.56.0.dev1857.dist-info → prediction_market_agent_tooling-0.56.0.dev1858.dist-info}/WHEEL +0 -0
- {prediction_market_agent_tooling-0.56.0.dev1857.dist-info → prediction_market_agent_tooling-0.56.0.dev1858.dist-info}/entry_points.txt +0 -0
@@ -31,6 +31,7 @@ class FunctionCache(SQLModel, table=True):
|
|
31
31
|
__tablename__ = "function_cache"
|
32
32
|
id: int | None = Field(default=None, primary_key=True)
|
33
33
|
function_name: str = Field(index=True)
|
34
|
+
full_function_name: str = Field(index=True)
|
34
35
|
# Args are stored to see what was the function called with.
|
35
36
|
args: Any = Field(sa_column=Column(JSONB, nullable=False))
|
36
37
|
# Args hash is stored as a fast look-up option when looking for cache hits.
|
@@ -148,8 +149,10 @@ def db_cache(
|
|
148
149
|
arg_string = json.dumps(args_dict, sort_keys=True, default=str)
|
149
150
|
args_hash = hashlib.md5(arg_string.encode()).hexdigest()
|
150
151
|
|
151
|
-
# Get the function name as concat of module and qualname, to not accidentally clash
|
152
|
-
|
152
|
+
# Get the full function name as concat of module and qualname, to not accidentally clash
|
153
|
+
full_function_name = func.__module__ + "." + func.__qualname__
|
154
|
+
# But also get the standard function name to easily search for it in database
|
155
|
+
function_name = func.__name__
|
153
156
|
|
154
157
|
# Determine if the function returns or contains Pydantic BaseModel(s)
|
155
158
|
return_type = func.__annotations__.get("return", None)
|
@@ -166,6 +169,7 @@ def db_cache(
|
|
166
169
|
select(FunctionCache)
|
167
170
|
.where(
|
168
171
|
FunctionCache.function_name == function_name,
|
172
|
+
FunctionCache.full_function_name == full_function_name,
|
169
173
|
FunctionCache.args_hash == args_hash,
|
170
174
|
)
|
171
175
|
.order_by(desc(FunctionCache.created_at))
|
@@ -179,7 +183,7 @@ def db_cache(
|
|
179
183
|
|
180
184
|
if cached_result:
|
181
185
|
logger.info(
|
182
|
-
f"Cache hit for {
|
186
|
+
f"Cache hit for {full_function_name} with args {args_dict} and output {cached_result.result}"
|
183
187
|
)
|
184
188
|
if is_pydantic_model:
|
185
189
|
try:
|
@@ -196,7 +200,7 @@ def db_cache(
|
|
196
200
|
# On cache miss, compute the result
|
197
201
|
computed_result = func(*args, **kwargs)
|
198
202
|
logger.info(
|
199
|
-
f"Cache miss for {
|
203
|
+
f"Cache miss for {full_function_name} with args {args_dict}, computed the output {computed_result}"
|
200
204
|
)
|
201
205
|
|
202
206
|
# If postgres access was specified, save it to dB.
|
@@ -209,6 +213,7 @@ def db_cache(
|
|
209
213
|
)
|
210
214
|
cache_entry = FunctionCache(
|
211
215
|
function_name=function_name,
|
216
|
+
full_function_name=full_function_name,
|
212
217
|
args_hash=args_hash,
|
213
218
|
args=args_dict,
|
214
219
|
result=result_data,
|
@@ -69,7 +69,7 @@ prediction_market_agent_tooling/tools/betting_strategies/market_moving.py,sha256
|
|
69
69
|
prediction_market_agent_tooling/tools/betting_strategies/minimum_bet_to_win.py,sha256=-FUSuQQgjcWSSnoFxnlAyTeilY6raJABJVM2QKkFqAY,438
|
70
70
|
prediction_market_agent_tooling/tools/betting_strategies/stretch_bet_between.py,sha256=THMXwFlskvzbjnX_OiYtDSzI8XVFyULWfP2525_9UGc,429
|
71
71
|
prediction_market_agent_tooling/tools/betting_strategies/utils.py,sha256=kpIb-ci67Vc1Yqqaa-_S4OUkbhWSIYog4_Iwp69HU_k,97
|
72
|
-
prediction_market_agent_tooling/tools/caches/db_cache.py,sha256=
|
72
|
+
prediction_market_agent_tooling/tools/caches/db_cache.py,sha256=2a1bIDQk1KmVcp6cR8nSDKyT7rWnBQ7oqmqLjw49sps,12196
|
73
73
|
prediction_market_agent_tooling/tools/caches/inmemory_cache.py,sha256=tGHHd9HCiE_hCCtPtloHZQdDfBuiow9YsqJNYi2Tx_0,499
|
74
74
|
prediction_market_agent_tooling/tools/contract.py,sha256=s3yo8IbXTcvAJcPfLM0_NbgaEsWwLsPmyVnOgyjq_xI,20919
|
75
75
|
prediction_market_agent_tooling/tools/costs.py,sha256=EaAJ7v9laD4VEV3d8B44M4u3_oEO_H16jRVCdoZ93Uw,954
|
@@ -97,8 +97,8 @@ prediction_market_agent_tooling/tools/tavily/tavily_models.py,sha256=5ldQs1pZe6u
|
|
97
97
|
prediction_market_agent_tooling/tools/tavily/tavily_search.py,sha256=Kw2mXNkMTYTEe1MBSTqhQmLoeXtgb6CkmHlcAJvhtqE,3809
|
98
98
|
prediction_market_agent_tooling/tools/utils.py,sha256=W-9SqeCKd51BYMRhDjYPQ7lfNO_zE9EvYpmu2r5WXGA,7163
|
99
99
|
prediction_market_agent_tooling/tools/web3_utils.py,sha256=44W8siSLNQxeib98bbwAe7V5C609NHNlUuxwuWIRDiY,11838
|
100
|
-
prediction_market_agent_tooling-0.56.0.
|
101
|
-
prediction_market_agent_tooling-0.56.0.
|
102
|
-
prediction_market_agent_tooling-0.56.0.
|
103
|
-
prediction_market_agent_tooling-0.56.0.
|
104
|
-
prediction_market_agent_tooling-0.56.0.
|
100
|
+
prediction_market_agent_tooling-0.56.0.dev1858.dist-info/LICENSE,sha256=6or154nLLU6bELzjh0mCreFjt0m2v72zLi3yHE0QbeE,7650
|
101
|
+
prediction_market_agent_tooling-0.56.0.dev1858.dist-info/METADATA,sha256=K1Igqgk7hNSEVoHZ40ZW3x7s9_rjtsgDIGJ7HrH7nVk,8114
|
102
|
+
prediction_market_agent_tooling-0.56.0.dev1858.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
|
103
|
+
prediction_market_agent_tooling-0.56.0.dev1858.dist-info/entry_points.txt,sha256=m8PukHbeH5g0IAAmOf_1Ahm-sGAMdhSSRQmwtpmi2s8,81
|
104
|
+
prediction_market_agent_tooling-0.56.0.dev1858.dist-info/RECORD,,
|
File without changes
|
File without changes
|