23 Commits

Author SHA1 Message Date
ab1434d671 Update go-llm module version and modify system prompt handling in knowledge integration 2025-04-12 03:42:16 -04:00
1447b73dfb Refactor function registration in knowledgeworker to use WithFunctions method 2025-04-12 02:30:01 -04:00
1be5cc047c Fix browser closure timing in search agent
Move defer statement to ensure browser closure occurs only after assigning the browser to the context. This prevents potential issues of premature resource release.
2025-04-12 02:22:10 -04:00
7a77d74624 Fix browser closure timing in search agent
Move defer statement to ensure browser closure occurs only after assigning the browser to the context. This prevents potential issues of premature resource release.
2025-04-07 11:24:58 -04:00
4f1a7e5b80 Streamline toolbox usage and update dependencies
Enhanced the toolbox in `search.go` to require tools explicitly with `WithRequireTool(true)`, improving execution control. Updated multiple library dependencies in `go.mod` and `go.sum` to ensure compatibility, stability, and to leverage the latest features. Added logging for `CallAndExecute` results to aid in debugging.
2025-04-04 20:14:46 -04:00
1aaed4ea28 Add YouTube transcript processing with yt-dlp integration
Introduced a new tool for extracting YouTube video transcripts and leveraging them to answer questions. Updated `SearchAndRead` to support reading YouTube transcripts and regular pages distinctly. Included relevant dependencies for handling subtitles and video downloads.
2025-03-27 02:18:16 -04:00
5d2c350acf Consolidated a bunch of reused code to agents 2025-03-26 00:21:19 -04:00
5407c1a7cc Refactor search agent for concurrency and simplify flow
Removed redundant fields and callbacks in the search agent while introducing concurrent processing for reading search results. Updated logic to enhance readability and modularity, including capped reads and streamlined interaction with search results. Adjusted dependencies and related usage to align with the refactored design.
2025-03-21 18:12:19 -04:00
693ac4e6a7 Add core implementation for AI-powered question answering
Introduce multiple agents, tools, and utilities for processing, extracting, and answering user-provided questions using LLMs and external data. Key features include knowledge processing, question splitting, search term generation, and contextual knowledge handling.
2025-03-21 11:10:48 -04:00
20bcaefaa2 Refactor search and answer logic to improve modularity
Extracted article handling and text evaluation functions to a new `extractor` module to enhance separation of concerns. Updated the search logic to incorporate result picking using LLM and adjusted the `Answer` function to return structured responses, ensuring better maintainability and extensibility.
2025-03-18 01:34:15 -04:00
b3df0fc902 Add OnFunctionFinished callback and enhance function handling
Introduces the OnFunctionFinished callback to process function results, errors, and context from OnNewFunction. Updates OnNewFunction to return a result and modifies function calls to include argument handling and post-execution callbacks. Enhances the "answer" function with a new "sources" parameter to provide source tracking for answers.
2025-03-18 01:03:46 -04:00
bc56213d5a Refactor search functionality and remove 'think' strategy
Reorganized search logic into a dedicated `search.go` file for better modularity. Removed the 'think' functionality and related options (`MaxThinks`) to simplify the codebase. Enhanced the search function and updated tool functions to reflect the streamlined approach.
2025-03-17 23:43:44 -04:00
a5a669f9a6 Refactor answer logic to improve question handling.
Updated the `Answer` method to better handle multi-step questions and manage retries. Introduced detailed step breakdowns and streamlined the function's structure for clarity and maintainability. Enhanced the default prompt for improved instruction clarity.
2025-03-17 00:20:07 -04:00
5b338d4129 implement the wolfram function 2025-03-16 23:00:04 -04:00
bdaa3b7d96 implement the wolfram function 2025-03-16 22:59:25 -04:00
4c106d32cb update against go-llm changes 2025-03-16 22:39:47 -04:00
1d47cf5758 Add customizable prompts for system messages in Options
Introduced `SystemPrompt` and `ExtraSystemPrompts` to allow more flexible and context-aware system message customization. Replaced static default system message with dynamic handling using these new fields, falling back to `DefaultPrompt` if needed. Updated the request construction logic to incorporate the newly added prompt options.
2025-03-16 17:08:09 -04:00
e1c10eb49e added .query 2025-02-21 22:35:47 -05:00
37c18b3b58 Update module name to match new repository URL
Renamed the Go module to align with the updated repository path for better clarity and organization. This ensures consistency across the project and prevents potential import conflicts.
2025-02-21 18:45:27 -05:00
6c30fdf4d8 Add DuckDuckGo support and refactor caching system
Introduced DuckDuckGo as a new search provider alongside Google. Implemented a flexible caching system with in-memory, file-based, and no-op cache options to improve modularity. Updated dependencies and revised the project structure for improved maintainability.
2025-02-21 18:40:25 -05:00
7a43e3a5c8 Fix unmarshalling issues and adjust logging for debugging
Modify `FunctionCall` struct to handle arguments as strings. Add debugging logs to facilitate error tracing and improve JSON unmarshalling in various functions.
2024-11-11 00:23:00 -05:00
a83d5f9822 sync of changes 2024-11-09 19:50:14 -05:00
98fa840f87 initial commit 2024-11-08 20:51:12 -05:00