-
Notifications
You must be signed in to change notification settings - Fork 190
PR to integrate FuzzIntrospector tool to FunctionAnalyzer agent #1074
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
This commit includes the following tasks: - implements a function analyzer agent using the ADK library. - implements a function that gets a function's source using the FuzzIntrospector API. - Provides this function as a tool to the function analyzer agent. - Adds basic prompt templates for the agent. - Creates a test file that can be used to access the agent independently.
…nction-analyzer-main
…s-fuzz-gen into introspector-tool
…s not need to perform any operation while waiting for results from the agent.
This commit refactors the agentic workflow so that the function's source is retrieved deterministically and included in the agemt. The prompts are also more specific on what requirements should be extracted.
…s-fuzz-gen into introspector-tool
First, the context retriever agent retrieves the source code of the function and its children for analysis. Then, the requirements extractor agent
…raw result and the list of requirements. The commit also updates function_analyzer_test to process multiple benchmarks in a provided file and write the results to a results file.
…trospector-tool
agent/function_analyzer.py
Outdated
|
||
from google.adk.agents import Agent | ||
from google.adk.agents import LlmAgent, SequentialAgent |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Eh at google we generally import modules not classes. (except for types). I sort of disagree with the rule but we should do it for consistency.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Okay, I have fixed all imports so we import modules, not classes.
c473906
to
47010af
Compare
/gcbrun -y ./benchmark-sets/all/astc-encoder.yaml |
/gcbrun exp -y ./benchmark-sets/all/astc-encoder.yaml |
/gcbrun exp -y ./benchmark-sets/all/astc-encoder.yaml -n pamusuo |
…nalyzer to get the model name dynamically.
It's a bit confusing we use CHAT for both chat and ask utility functions. This changes so it's clear from the logging when each of them is used. Signed-off-by: David Korczynski <david@adalogics.com>
This PR mainly implements a crash analyzer that can interact with LLDB in the multi-agent framework, and supports GPT. In addition, this PR attempts to fix the problem of not replacing the fuzz target and build script. This PR is under testing. The main logic is no longer changing, and minor bugs are being fixed. TODO: Optimize the process of agent interaction with LLDB. Solve the problem of missing debugging information for some projects. Try to add LLM-based static methods to enhance the crash analyzer. --------- Co-authored-by: Dongge Liu <donggeliu@google.com>
Fixing broken OSS-Fuzz projects is a common task and something we could leverage OFG to do. This adds an initial agent-based approach for doing this and it has already been used to fix google/oss-fuzz#13389 and other projects locally. ``` oss-fuzz-generator fix-build --project PROJECT_NAME --model ${MODEL} ``` --------- Signed-off-by: David Korczynski <david@adalogics.com>
- Works better with C/CXX - Improve prompt writings - Improve OSS-Fuzz build_fuzzers/check_build validation - Improves code quality --------- Signed-off-by: David Korczynski <david@adalogics.com>
Signed-off-by: David Korczynski <david@adalogics.com>
Signed-off-by: David Korczynski <david@adalogics.com>
Signed-off-by: David Korczynski <david@adalogics.com>
Signed-off-by: David Korczynski <david@adalogics.com>
…1086) Signed-off-by: David Korczynski <david@adalogics.com>
…trospector-tool
/gcbrun exp -n pa -m vertex_ai_gemini-2-5-pro-chat -ag |
Closing and reopening this PR to identify recent |
/gcbrun exp -n pa -m vertex_ai_gemini-2-5-pro-chat -ag |
/gcbrun exp -n pamusuo -m vertex_ai_gemini-2-5-pro-chat -ag |
This PR does the following:
Known Issues: