diff --git a/README.md b/README.md index e9e01db2..47e7839e 100644 --- a/README.md +++ b/README.md @@ -516,7 +516,7 @@ result = await Runner.run(agent, message) ``` -You may find different [tools](cai/tools). They are grouped in 6 major categories inspired by the security kill chain [^2]: +You may find different [tools](tools). They are grouped in 6 major categories inspired by the security kill chain [^2]: 1. Reconnaissance and weaponization - *reconnaissance* (crypto, listing, etc) 2. Exploitation - *exploitation* @@ -1044,7 +1044,12 @@ CAI itself is not a profit-seeking initiative. Our goal is to build a sustainabl +
I get a `Unable to locate package python3.12-venv` when installing the prerequisites on my debian based system! +The easiest way to get around this is to simply install [`python3.12`](https://www.python.org/downloads/release/python-3120/) from source. + + +
## Citation If you want to cite our work, please use the following: diff --git a/src/cai/sdk/agents/models/openai_chatcompletions.py b/src/cai/sdk/agents/models/openai_chatcompletions.py index e0da828f..b7e424f9 100644 --- a/src/cai/sdk/agents/models/openai_chatcompletions.py +++ b/src/cai/sdk/agents/models/openai_chatcompletions.py @@ -974,9 +974,10 @@ class OpenAIChatCompletionsModel(Model): # Fix Google Gemini OpenAI compatibility issues. # When using the OpenAI-compatible API to call tools with Google Gemini # tool_call.id is returned as an empty string. - for tool_call in assistant_msg.tool_calls: - if tool_call.id is None or tool_call.id == "": - tool_call.id = uuid.uuid4().hex[:16] + if "openai/gemini" in os.getenv("CAI_MODEL"): + for tool_call in assistant_msg.tool_calls: + if tool_call.id is None or tool_call.id == "": + tool_call.id = uuid.uuid4().hex[:16] for tool_call in assistant_msg.tool_calls: # Handle empty arguments before storing