You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Improving Function and Context Analyzer Agents (#1144)
This PR makes the following improvements to the function analyzer and
context analyzer agents in OSS-Fuzz-Gen.
Many of these improvements are targeted at resolving observed errors in
these agents.
Context Analyzer
- Adds a field for source_code_evidence in its final response. This
forces the context analyzer to provide source code evidence to back its
analysis.
- Modifies agents built using ADK library to print their final response
(in JSON format) using xml tags to make them more readable and
consistent with the output of other OSS-Fuzz-Gen agents in the logs and
HTML report.
- Modifies context analyzer prompts so it specifies steps the LLM should
take to analyze the feasibility of a crash.
Coverage Analyzer
- Provides the list of function requirements to the coverage analyzer.
- Modifies the coverage analyzer's prompt to instruct it to not suggest
coverage improvement changes that will violate the derived function
requirements.
Function Analyzer
- Modifies function analyzer to report its final response using a
function tool
- Handles invalid LLM responses in the function analyzer agent
- Modifies the Function Analyzer's prompt so it specifies steps the
function analyzer should take to analyze a function's requirements.
Analysis Stage
- Modifies the Analysis stage to only execute the context analyzer if
the crash analyzer classified the crash as a bug in the program.
models.py
- Handle LLM responses containing zero or multiple entries in the
content.parts array. These LLM responses previously caused uncaught
exceptions that crashed the agent.
- Modifies Gemini-2.5-flash models to use stable versions
prompt_builder.py
Integrates result and analysis from the context analyzer into the Crash
Enhancer agent.
0 commit comments