Hi,
I am running into an issue when trying to trace my OpenAI agent using W&B Weave inside an AWS Lambda function.
The application fails during initialization with a FileNotFoundError
right after importing weave
. The traceback shows that the error occurs when weave.flow.eval_imperative
(part of the tracing/evaluation system) attempts to create a multiprocessing.Lock()
.
Any help would be greatly appreciated. Thank you!
Traceback
[ERROR] FileNotFoundError: [Errno 2] No such file or directory
Traceback (most recent call last):
File "/var/lang/lib/python3.12/importlib/__init__.py", line 90, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 935, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 999, in exec_module
File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
File "/var/task/lambda-functions/trading_bot/lambda_function.py", line 7, in <module>
from openai_agents.src.main import main
File "/var/task/openai_agents/src/main.py", line 4, in <module>
import weave
File "/var/task/weave/__init__.py", line 14, in <module>
from weave.flow.eval_imperative import EvaluationLogger
File "/var/task/weave/flow/eval_imperative.py", line 206, in <module>
global_scorer_cache = ScorerCache()
File "/var/task/weave/flow/eval_imperative.py", line 192, in __init__
self._cached_scorers_lock = Lock()
File "/var/lang/lib/python3.12/multiprocessing/context.py", line 68, in Lock
return Lock(ctx=self.get_context())
File "/var/lang/lib/python3.12/multiprocessing/synchronize.py", line 169, in __init__
SemLock.__init__(self, SEMAPHORE, 1, 1, ctx=ctx)
File "/var/lang/lib/python3.12/multiprocessing/synchronize.py", line 57, in __init__
sl = self._semlock = _multiprocessing.SemLock(