Skip to content

Conversation

@tcdent
Copy link
Contributor

@tcdent tcdent commented Mar 11, 2025

Creates an isolated test environment for each framework with uv run and tests across multiple Python versions and multiple framework package versions.

Run with bin/tests/test-matrix-integration for the full suite. Other flags listed inside command file.

  • Had to disable new integration tests. TODO re-enable @teocns tests.

sprajosh and others added 30 commits June 19, 2024 14:25
* added gifs and banner

* add badges

* added logos

* new screenshots

* update readme to local paths

* remove styling

* rounded corners on replay

* image to path

* update badge to use png
* fixed padding

* update why agentops and star graph
* add codecov bot

* add codecov bot

* python 3.11
* Updated starter example

* Update openai-gpt.ipynb

* Update openai-gpt.ipynb

* Update openai-gpt.ipynb

* Update openai-gpt.ipynb
* Return token cost on session_end

* Add type hint for return

* Add docstring

* Fix black formatting error
* revert Apply @check_init to decorators

* bump version
* Updated starter example

* Update openai-gpt.ipynb

* Update openai-gpt.ipynb

* Update openai-gpt.ipynb

* Update openai-gpt.ipynb

* Langchain added to documentation

Closes #270

---------

Co-authored-by: akj <[email protected]>
* Fixes 254

* Deleted stale code

* Plumbing Models

* Fixed breaking change lol

* Black reformatting
* Update quickstart.mdx

* Test commit

* Updates Github stars with dynamic data using MDX + <script>

Same format will fix #267
suck it mint growth plan, I did it my damn self
* decouple sessions and client

* formatter test

* formatter test

* tests

* black formatting

* assign llm calls to sessions

* worker and tracker changes

* use jwt for session ids

* test fixes

* end all sessions

* test: fix session tests

* reset env between tests

* formatting

* add worker to session instead of client

* test fixes!!!

* test fixes

* test coverage

* singleton tests

* tracker fixes

* record function multiple sessions

* async tests

* test fix

* block record function if multiple sessions

* manual tests

* session end fix

* manual server test

* notebook tests

* merge main

* black formatting

* cleanup

* docs

* moar docs

* add patch function

* multiple sessions docs

* multisession example

* fix tests

* review fixes

* import fix

* comments

* helper functions
* added autogen examples

* added new docs card

* indexnt mdx

* updated notebooks or black

* remove black jupyter

* revert black
* Rounds up to nearest 100, makes script elegante

suck it mint growth plan, I did it my damn self

* mild file struct change to accommodate more scripts

* oops don't update text with error message

* also handle page navs and still update data

* more robust method for updates on nav

* final robustification

* logo update (note needs design pass)

Fixes #274 pending design pass

* handling dynamic adjustments on all pages

* Update host-env.mdx

* Update host-env.mdx

* Documentation Value Prop Positioning and Readability Updates

* Icon images for docs

* replace crew icon

* icon & style updates

* added stamp img

* Big intro section update - for developers

* Intro animations for Terminal

* transferring currently unused UI to snippets

* Massive readability change (bonus update coming)

* Prepping Discord CTA (not final)

* COMPLETE DRAFT push (incl. Discord CTA)

* minor wording change

* another minor wording change

* OOPS fixed breaking change sry
teocns and others added 23 commits January 16, 2025 15:14
Tox was removed in #606, hence no point to keep this file hanging around

Signed-off-by: Teo <[email protected]>
Removing a redundant module `agentops.enums` and instead moving them in the modules they belong:


- Moved `EventType` enum from `enums.py` to `event.py`
- Moved `EndState` enum from `enums.py` to `session.py`
- Removed `enums.py` module
- Updated imports across affected files
- Updated dependency graph in `tach.yml`

Signed-off-by: Teo <[email protected]>
* feat: Add Gemini API integration

- Add GeminiProvider class for tracking Gemini API calls
- Support both sync and streaming modes
- Track prompts, completions, and token usage
- Add test script demonstrating usage

Co-Authored-By: Alex Reibman <[email protected]>

* fix: Pass session correctly to track LLM events in Gemini provider

Co-Authored-By: Alex Reibman <[email protected]>

* feat: Add Gemini integration with example notebook

Co-Authored-By: Alex Reibman <[email protected]>

* fix: Add null checks and improve test coverage for Gemini provider

Co-Authored-By: Alex Reibman <[email protected]>

* style: Add blank lines between test functions

Co-Authored-By: Alex Reibman <[email protected]>

* test: Improve test coverage for Gemini provider

Co-Authored-By: Alex Reibman <[email protected]>

* style: Fix formatting in test_gemini.py

Co-Authored-By: Alex Reibman <[email protected]>

* test: Add comprehensive test coverage for edge cases and error handling

Co-Authored-By: Alex Reibman <[email protected]>

* test: Add graceful API key handling and skip tests when key is missing

Co-Authored-By: Alex Reibman <[email protected]>

* style: Fix formatting issues in test files

Co-Authored-By: Alex Reibman <[email protected]>

* style: Remove trailing whitespace in test_gemini.py

Co-Authored-By: Alex Reibman <[email protected]>

* test: Add coverage for error handling, edge cases, and argument handling in Gemini provider

Co-Authored-By: Alex Reibman <[email protected]>

* test: Add streaming exception handling test coverage

Co-Authored-By: Alex Reibman <[email protected]>

* style: Apply ruff auto-formatting to test_gemini.py

Co-Authored-By: Alex Reibman <[email protected]>

* test: Fix type errors and improve test coverage for Gemini provider

Co-Authored-By: Alex Reibman <[email protected]>

* test: Add comprehensive error handling test coverage for Gemini provider

Co-Authored-By: Alex Reibman <[email protected]>

* style: Apply ruff-format fixes to test_gemini.py

Co-Authored-By: Alex Reibman <[email protected]>

* fix: Configure Gemini API key before model initialization

Co-Authored-By: Alex Reibman <[email protected]>

* fix: Update GeminiProvider to properly handle instance methods

Co-Authored-By: Alex Reibman <[email protected]>

* fix: Use provider instance in closure for proper method binding

Co-Authored-By: Alex Reibman <[email protected]>

* fix: Use class-level storage for original method

Co-Authored-By: Alex Reibman <[email protected]>

* fix: Use module-level storage for original method

Co-Authored-By: Alex Reibman <[email protected]>

* style: Apply ruff-format fixes to Gemini integration

Co-Authored-By: Alex Reibman <[email protected]>

* fix: Move Gemini tests to unit test directory for proper coverage reporting

Co-Authored-By: Alex Reibman <[email protected]>

* fix: Update Gemini provider to properly handle prompt extraction and improve test coverage

Co-Authored-By: Alex Reibman <[email protected]>

* test: Add comprehensive test coverage for Gemini provider session handling and event recording

Co-Authored-By: Alex Reibman <[email protected]>

* style: Apply ruff-format fixes to test files

Co-Authored-By: Alex Reibman <[email protected]>

* fix: Pass LlmTracker client to GeminiProvider constructor

Co-Authored-By: Alex Reibman <[email protected]>

* remove extra files

* fix: Improve code efficiency and error handling in Gemini provider

- Add _extract_token_counts helper method
- Make error handling consistent with OpenAI provider
- Remove redundant session checks
- Improve error message formatting
- Add comprehensive documentation

Co-Authored-By: Alex Reibman <[email protected]>

* test: Add comprehensive test coverage for Gemini provider

Co-Authored-By: Alex Reibman <[email protected]>

* fix: Set None as default values and improve test coverage

Co-Authored-By: Alex Reibman <[email protected]>

* build: Add google-generativeai as test dependency

Co-Authored-By: Alex Reibman <[email protected]>

* docs: Update examples and README for Gemini integration

Co-Authored-By: Alex Reibman <[email protected]>

* add gemini logo image

* add gemini to examples

* add gemini to docs

* refactor handle_response method

* cleanup gemini tracking code

* delete unit test for gemini

* rename and clean gemini example notebook

* ruff

* update docs

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: Alex Reibman <[email protected]>
Co-authored-by: reibs <[email protected]>
Co-authored-by: Pratyush Shukla <[email protected]>
bump `agentops` to `0.3.24`
* remove python files from examples

* linting
* added new methods and fixed issues

* updated test code

* more organized test

* ruff

* upgrade for fixes

* remove `ActionEvent` from `on_llm_new_token` because @areibman said "too verbose"
This change updates the default behavior of the AgentOps logging configuration to not log to a file unless explicitly specified. Previously, users of other OpenSource libraries that integrate with AgentOps had to set the AGENTOPS_LOGGING_TO_FILE environment variable to avoid creating a log file by default.

With this update, the log file will not be created unless the user sets AGENTOPS_LOGGING_TO_FILE to "true". This allows users to opt-in to local file logging if they wish to see their logs locally, rather than just on the AgentOps platform.
…h specific request filtering (#670)

* test(record_tool): replace `assert len(mock_req.request_history) == N` checks with specific request filtering

1. Replaced `assert len(mock_req.request_history) == N` checks with specific request filtering
2. Added helper to find relevant requests using URL patterns
3. Made assertions more focused on the actual tool recording functionality
4. Maintained all existing functionality checks while removing dependency on request count

* test(record_action): replace `assert len(mock_req.request_history) == N` checks with specific request filtering

Replaced request count assertions with specific request filtering
Added helper to find relevant requests using URL patterns
Made assertions more focused on the actual action recording
functionality
Maintained all existing functionality checks while removing dependency
on request count

Signed-off-by: Teo <[email protected]>

* test(session): replace `assert len(mock_req.request_history) == N` checks with specific request filtering

Signed-off-by: Teo <[email protected]>

* test(pre_init): replace `assert len(mock_req.request_history) == N` checks with specific request filtering

Signed-off-by: Teo <[email protected]>

* test(canary): replace `assert len(mock_req.request_history) == N` checks with specific request filtering

Signed-off-by: Teo <[email protected]>

---------

Signed-off-by: Teo <[email protected]>
)

* remove support for `StudioAnswer` type responses

* remove unused code

* remove old references

* linting
* fix(tracker): initialize LiteLLM provider conditionally for OpenAI API patching

* feat(tracker): add detection for LiteLLM calls before OpenAI initialization

* refactor(tracker): remove print statements and update LiteLLM initialization variable

* fix(tracker): add version check for OpenAI module before initialization

* refactor(tracker): clean up whitespace in LlmTracker class methods

* added appropriate comments for further reference

---------

Co-authored-by: Pratyush Shukla <[email protected]>
* feat: add Haystack integration documentation and examples

* add haystack logo

* cosmetic changes to refine content

* fix: update Haystack logo URL and clean up example notebooks

* fix: update Haystack logo image

---------

Co-authored-by: Pratyush Shukla <[email protected]>
* Delete styles

* delete scripts

---------

Co-authored-by: Pratyush Shukla <[email protected]>
@tcdent tcdent requested review from Dwij1704 and teocns March 11, 2025 01:25
@teocns
Copy link
Contributor

teocns commented Mar 11, 2025

please change the base to dev instead of main

@teocns teocns changed the base branch from main to dev March 11, 2025 03:42
@teocns teocns closed this Mar 11, 2025
@gitguardian
Copy link

gitguardian bot commented Mar 11, 2025

⚠️ GitGuardian has uncovered 1 secret following the scan of your pull request.

Please consider investigating the findings and remediating the incidents. Failure to do so may lead to compromising the associated services or software components.

🔎 Detected hardcoded secret in your pull request
GitGuardian id GitGuardian status Secret Commit Filename
12083425 Triggered Generic High Entropy Secret d12f5f9 tests/core_manual_tests/agentchat_agentops.ipynb View secret
🛠 Guidelines to remediate hardcoded secrets
  1. Understand the implications of revoking this secret by investigating where it is used in your code.
  2. Replace and store your secret safely. Learn here the best practices.
  3. Revoke and rotate this secret.
  4. If possible, rewrite git history. Rewriting git history is not a trivial act. You might completely break other contributing developers' workflow and you risk accidentally deleting legitimate data.

To avoid such incidents in the future consider


🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.