FAQ & Troubleshooting
Find answers to common questions and solutions to potential issues you might encounter while using CleverBee.
Frequently Asked Questions
The primary reasoning model (selected during setup, e.g., Claude Sonnet, Gemini Pro, Llama 3) is responsible for high-level planning, deciding which tools to use, understanding context, and writing the final report. The next step model (typically Gemini 2.5 Flash) analyzes the research progress and decides on the next action to take. The summarizer model (e.g., Gemini Flash, DeepSeek 8B) is used for processing large amounts of text from web pages or documents, condensing it into smaller summaries that the primary model can work with efficiently, especially when using local models with smaller context windows.
If TRACK_TOKEN_USAGE
is enabled in config.yaml
, CleverBee uses LangChain callbacks to count the input and output tokens for each LLM API call. It then multiplies these counts by the pricing defined in config.yaml
(e.g., GEMINI_COST_PER_1K_INPUT_TOKENS
) to provide an estimated cost. Note that this is an estimate and actual billing from the provider might differ slightly.
Yes, if you select local models for both the primary reasoning and summarization tasks during setup (e.g., using Llama 3 and DeepSeek 8B). However, core functionality like web browsing (web_browser
tool) and using MCP tools that require internet access (like YouTube transcripts) will not work offline.
Run the application with the --no-cache
flag: ./run.sh --no-cache
. This will delete the .langchain.db
file before starting, forcing the LLM to generate fresh responses.
By default, local GGUF models selected during setup are downloaded to the models/
directory within the project folder. This location is defined by LOCAL_MODELS_DIR
in config.yaml
.
Troubleshooting Common Issues
llama-cpp-python
build.
Solution:
- Ensure you have CMake installed (
brew install cmake
orsudo apt install cmake
). - Check the terminal output for specific compilation errors. Missing C++ compiler or development libraries might be the cause.
- On macOS, ensure Xcode Command Line Tools are installed:
xcode-select --install
. - Try cleaning the build cache and reinstalling:
pip cache purge
then re-runsetup.sh
or manually run the llama-cpp-python install command from the setup script.
Solution:
- Make sure you are logged into Hugging Face CLI:
huggingface-cli login
. - Visit the model's page on Hugging Face (URLs are provided during setup) and accept any terms or request access if required.
- Re-run
setup.sh
to attempt the download again.
Solution:
- This is expected, particularly on Apple Silicon due to memory bandwidth limitations compared to high-end NVIDIA GPUs.
- Ensure
N_GPU_LAYERS
inconfig.yaml
is set to an optimized value (setup script provides recommendations). More layers offloaded generally means better performance, up to the limit of your VRAM/Unified Memory. - Consider using a smaller local model (e.g., Mistral 7B) or switching to a cloud model (Gemini/Claude) via
config.yaml
for better speed.
Solution:
- Double-check that your API keys in the
.env
file are correct and have the necessary permissions/billing enabled on the provider's platform (Anthropic/Google AI Studio). - Ensure the keys are correctly formatted in the
.env
file (e.g.,GEMINI_API_KEY="your_key_here"
).
Solution:
- Increase
BROWSER_NAVIGATION_TIMEOUT
inconfig.yaml
if pages load slowly. - Ensure
USE_CAPTCHA_SOLVER
is enabled if you frequently encounter CAPTCHAs (requires additional setup for the solver service). - Some websites employ sophisticated anti-bot measures that Playwright (even with patches) may not bypass. The agent might need to rely on other tools or search results in such cases.
Solution:
- Check the terminal logs for errors originating from the specific MCP server process.
- Ensure the command defined in
mcp.json
for that server is correct and the necessary dependencies are installed. - Verify the tool is enabled in
config.yaml
under thetools:
section.
Getting Further Help
If your issue isn't covered here:
- Check the terminal logs for detailed error messages. Set
LOG_LEVEL
toDEBUG
inconfig.yaml
for maximum verbosity. - Search the GitHub Issues for similar problems.
- If you find a new bug or have a feature request, please open a new issue on GitHub, providing as much detail as possible (your OS, Python version, steps to reproduce, error messages, relevant configuration).
Contributing
We welcome contributions to the CleverBee project. Please note that we require contributors to sign a Contributor License Agreement (CLA). You can find the CLA here: CLA.md.
License
CleverBee is open source but intended for personal use, research purposes, and non-commercial applications. It is designed to bring fair, balanced, and critical knowledge research to everyone.