Skip to content
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

dev -> main #869

Merged
merged 23 commits into from
Nov 22, 2024
Merged

dev -> main #869

merged 23 commits into from
Nov 22, 2024

Conversation

HamadaSalhab
Copy link
Contributor

@HamadaSalhab HamadaSalhab commented Nov 22, 2024

Important

This pull request adds Cloudinary and FFmpeg integrations, new file management features, and various enhancements and cleanups across the codebase.

  • Environment Variables:
    • Added MAX_FREE_SESSIONS and MAX_FREE_EXECUTIONS to .env.example.
  • Integrations:
    • Added Cloudinary and FFmpeg integrations with new models and setup in integrations-service.
    • Updated providers.py to include Cloudinary and FFmpeg.
  • Models and Routers:
    • Added file management models and routes in agents-api.
    • Implemented file upload, retrieval, and deletion in files models and routers.
  • Enhancements:
    • Increased simpleeval.MAX_STRING_LENGTH to 2048000 in base_evaluate.py.
    • Updated execute_api_call timeout to 600 seconds.
  • Refactoring and Cleanup:
    • Removed unused cookbooks and issue templates.
    • Updated README-CN.md and README-JA.md for better clarity.
    • Changed Docker configurations for integrations-service and llm-proxy.

This description was created by Ellipsis for 26a3315. It will automatically update as commits are pushed.

creatorrr and others added 22 commits November 13, 2024 14:14
Signed-off-by: Diwank Singh Tomer <[email protected]>

<!-- ELLIPSIS_HIDDEN -->


----

> [!IMPORTANT]
> Tune RocksDB options in `memory-store/options` to enhance performance
by adjusting buffer sizes, job limits, and compression settings.
> 
>   - **DBOptions**:
>     - Increase `max_background_jobs` from 6 to 16.
>     - Increase `max_subcompactions` from 1 to 2.
> - Increase `writable_file_max_buffer_size` from 1048576 to 5048576.
>     - Set `create_if_missing` to true.
>     - Increase `WAL_size_limit_MB` from 0 to 512.
>     - Enable `use_fsync`.
>   - **CFOptions "default"**:
>     - Increase `write_buffer_size` from 134217728 to 267108864.
>     - Increase `max_write_buffer_number` from 5 to 25.
>     - Increase `level0_file_num_compaction_trigger` from 4 to 16.
>     - Increase `max_compaction_bytes` from 1677721600 to 2677721600.
>     - Change `compression` from `kLZ4Compression` to `kNoCompression`.
> - Increase `max_write_buffer_size_to_maintain` from 134217728 to
534217728.
>     - Increase `min_write_buffer_number_to_merge` from 1 to 4.
> 
> <sup>This description was created by </sup>[<img alt="Ellipsis"
src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=julep-ai%2Fjulep&utm_source=github&utm_medium=referral)<sup>
for 1aab742. It will automatically
update as commits are pushed.</sup>


<!-- ELLIPSIS_HIDDEN -->

---------

Signed-off-by: Diwank Singh Tomer <[email protected]>
Co-authored-by: Ahmad-mtos <[email protected]>
When a `retry`-decorated function finishes the maximum amount of retries
and still throws an error, `tenacity` throws an error with type
`RetryError`, so I added that to the list of retryable errors
<!-- ELLIPSIS_HIDDEN -->

----

> [!IMPORTANT]
> Added `RetryError` to `RETRYABLE_ERROR_TYPES` in `tasks.py` to handle
exhausted retry cases.
> 
>   - **Error Handling**:
> - Added `RetryError` to `RETRYABLE_ERROR_TYPES` in `tasks.py` to
handle cases where a `retry`-decorated function exhausts retries and
throws this error.
> 
> <sup>This description was created by </sup>[<img alt="Ellipsis"
src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=julep-ai%2Fjulep&utm_source=github&utm_medium=referral)<sup>
for d200077. It will automatically
update as commits are pushed.</sup>

<!-- ELLIPSIS_HIDDEN -->
<!-- ELLIPSIS_HIDDEN -->



> [!IMPORTANT]
> Convert `AssertionError` to HTTP 422 error in
`prepare_execution_input.py`.
> 
>   - **Error Handling**:
> - Convert `AssertionError` to HTTP 422 error in
`prepare_execution_input.py` using `rewrap_exceptions` decorator.
> 
> <sup>This description was created by </sup>[<img alt="Ellipsis"
src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=julep-ai%2Fjulep&utm_source=github&utm_medium=referral)<sup>
for b07f915. It will automatically
update as commits are pushed.</sup>

<!-- ELLIPSIS_HIDDEN -->
)

<!-- ELLIPSIS_HIDDEN -->


> [!IMPORTANT]
> Add handling for `AssertionError` in `prepare_execution_input.py`,
mapping it to HTTP 429 error.
> 
>   - **Error Handling**:
> - Add handling for `AssertionError` in `prepare_execution_input.py`,
mapping it to `HTTPException` with status code 429.
> 
> <sup>This description was created by </sup>[<img alt="Ellipsis"
src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=julep-ai%2Fjulep&utm_source=github&utm_medium=referral)<sup>
for 901bec8. It will automatically
update as commits are pushed.</sup>


<!-- ELLIPSIS_HIDDEN -->
Signed-off-by: Diwank Singh Tomer <[email protected]>
…tions (#836)

<!-- ELLIPSIS_HIDDEN -->


> [!IMPORTANT]
> Enhances error handling in integration executions by introducing
`ExecutionError` and updating functions to return it on exceptions.
> 
>   - **Behavior**:
> - `execute_integration` in `execute_integration.py` raises an
exception if `integration_service_response` contains an error.
> - Integration functions in `brave.py`, `browserbase.py`, `email.py`,
`llama_parse.py`, `remote_browser.py`, `spider.py`, `weather.py`, and
`wikipedia.py` return `ExecutionError` on exceptions.
>   - **Models**:
> - Adds `ExecutionError` model to `execution.py` to encapsulate error
messages.
>   - **Functions**:
> - Updates return types of integration functions to include
`ExecutionError` in `brave.py`, `browserbase.py`, `email.py`,
`llama_parse.py`, `remote_browser.py`, `spider.py`, `weather.py`, and
`wikipedia.py`.
> 
> <sup>This description was created by </sup>[<img alt="Ellipsis"
src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=julep-ai%2Fjulep&utm_source=github&utm_medium=referral)<sup>
for 968fe53. It will automatically
update as commits are pushed.</sup>


<!-- ELLIPSIS_HIDDEN -->

---------

Co-authored-by: HamadaSalhab <[email protected]>
…on input (#842)

<!-- ELLIPSIS_HIDDEN -->



> [!IMPORTANT]
> Change `AssertionError` handling in `prepare_execution_input.py` to
return status code 429 with a retry header.
> 
>   - **Behavior**:
> - Change `AssertionError` handling in `prepare_execution_input.py` to
return status code 429 instead of 422.
> - Add `x-should-retry: true` header to `AssertionError` responses,
indicating retry capability.
> 
> <sup>This description was created by </sup>[<img alt="Ellipsis"
src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=julep-ai%2Fjulep&utm_source=github&utm_medium=referral)<sup>
for 9719afe. It will automatically
update as commits are pushed.</sup>

<!-- ELLIPSIS_HIDDEN -->
…he pip group (#849)

[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=aiohttp&package-manager=pip&previous-version=3.10.10&new-version=3.10.11)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/julep-ai/julep/network/alerts).

</details>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
- **feat(typespec,agents-api): Add files api models**
- **feat(agents-api): Add files relation to cozo**
- **feat(typespec,agents-api): Add file cozo queries**

<!-- ELLIPSIS_HIDDEN -->

----

> [!IMPORTANT]
> Add file storage API to agents-api and typespec, including models,
endpoints, and tests for file operations.
> 
>   - **Behavior**:
>     - Adds file storage API to `agents-api` and `typespec`.
>     - Supports creating, retrieving, and deleting files.
>   - **Models**:
> - Adds `File` and `CreateFileRequest` models in
`agents-api/autogen/Files.py` and `typespec/files/models.tsp`.
>   - **Endpoints**:
> - Adds `FilesRoute` in `typespec/main.tsp` and
`typespec/files/endpoints.tsp` for file operations.
>   - **Routers**:
> - Adds `files_router` in `agents-api/routers/__init__.py` and
`agents-api/routers/files` for handling file routes.
>   - **Database**:
> - Creates `files` relation in
`migrations/migrate_1731953383_create_files_relation.py`.
>   - **Tests**:
> - Adds tests for file operations in `tests/test_files_queries.py` and
`tests/test_files_routes.py`.
> 
> <sup>This description was created by </sup>[<img alt="Ellipsis"
src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=julep-ai%2Fjulep&utm_source=github&utm_medium=referral)<sup>
for 271076b. It will automatically
update as commits are pushed.</sup>

<!-- ELLIPSIS_HIDDEN -->

---------

Signed-off-by: Diwank Singh Tomer <[email protected]>
Co-authored-by: creatorrr <[email protected]>
Co-authored-by: vedantsahai18 <[email protected]>
…851)

<!-- ELLIPSIS_HIDDEN -->



> [!IMPORTANT]
> Refactor `execute_system` in `execute_system.py` to improve background
task handling for 'create' and 'chat' operations on 'doc' subresource.
> 
>   - **Behavior**:
> - Refactor `execute_system` in `execute_system.py` to handle
background tasks by creating `BackgroundTasks` instance before handler
call and awaiting it after.
>     - Applied to 'create' and 'chat' operations for 'doc' subresource.
>   - **Misc**:
>     - No changes to search operations or regular operations handling.
> 
> <sup>This description was created by </sup>[<img alt="Ellipsis"
src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=julep-ai%2Fjulep&utm_source=github&utm_medium=referral)<sup>
for d216f34. It will automatically
update as commits are pushed.</sup>

<!-- ELLIPSIS_HIDDEN -->
<!-- ELLIPSIS_HIDDEN -->


> [!IMPORTANT]
> Add FFmpeg and Cloudinary integrations, update models and
configurations, and enhance media processing functionalities.
> 
>   - **Integrations**:
> - Add FFmpeg and Cloudinary integrations in `integrations-service`.
>     - Update `providers.py` to include FFmpeg and Cloudinary.
>     - Add `cloudinary.py` and `ffmpeg.py` for handling operations.
>   - **Models**:
>     - Add new models for Cloudinary and FFmpeg in `Tools.py`.
> - Update `Chat.py`, `Entries.py`, and `Tasks.py` with new content
models.
>   - **Configurations**:
>     - Update `Dockerfile` to install FFmpeg.
>     - Add `GEMINI_API_KEY` to `.env.example` and `docker-compose.yml`.
>     - Update `gunicorn_conf.py` for logging and worker management.
>   - **Functions**:
>     - Modify `execute_integration.py` for robust error handling.
>     - Update `execute_system.py` to support session creation.
> - Enhance `base_evaluate.py` with increased `MAX_STRING_LENGTH` and
deep blob storage.
>   - **Misc**:
>     - Update `litellm-config.yaml` with new Gemini models.
>     - Add new TypeSpec files for Cloudinary and FFmpeg.
> 
> <sup>This description was created by </sup>[<img alt="Ellipsis"
src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=julep-ai%2Fjulep&utm_source=github&utm_medium=referral)<sup>
for 0fe1cec. It will automatically
update as commits are pushed.</sup>


<!-- ELLIPSIS_HIDDEN -->

---------

Signed-off-by: Diwank Singh Tomer <[email protected]>
Co-authored-by: Ahmad-mtos <[email protected]>
Co-authored-by: Ahmad-mtos <[email protected]>
Co-authored-by: Vedantsahai18 <[email protected]>
Co-authored-by: HamadaSalhab <[email protected]>
Co-authored-by: HamadaSalhab <[email protected]>
Co-authored-by: Diwank Singh Tomer <[email protected]>
…rious integrations (#855)

<!-- ELLIPSIS_HIDDEN -->



> [!IMPORTANT]
> Add environment variable handling for API keys in integration services
using `environs`.
> 
>   - **Environment Variables**:
> - Add `env.py` to load API keys and other sensitive data using
`environs`.
> - Update `docker-compose.yml` to include new environment variables for
integrations.
>   - **Integration Updates**:
> - Modify `brave.py`, `browserbase.py`, `cloudinary.py`, `email.py`,
`llama_parse.py`, `spider.py`, and `weather.py` to use environment
variables for API keys.
> - Replace hardcoded 'DEMO_API_KEY' and similar placeholders with
actual environment variables.
>   - **Dependencies**:
> - Add `environs` to `pyproject.toml` for environment variable
management.
> 
> <sup>This description was created by </sup>[<img alt="Ellipsis"
src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=julep-ai%2Fjulep&utm_source=github&utm_medium=referral)<sup>
for 65d5c0a. It will automatically
update as commits are pushed.</sup>

<!-- ELLIPSIS_HIDDEN -->
<!-- ELLIPSIS_HIDDEN -->


> [!IMPORTANT]
> Remove unnecessary environment variables from `docker-compose.yml` and
`env.py`.
> 
>   - **Environment Variables**:
> - Removed `RAPID_API_KEY`, `RAPID_API_HOST`, `ARYSHARE_KEY`, and
`ARYSHARE_PROFILE_ID` from `docker-compose.yml` and `env.py` as they are
no longer needed.
> 
> <sup>This description was created by </sup>[<img alt="Ellipsis"
src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=julep-ai%2Fjulep&utm_source=github&utm_medium=referral)<sup>
for 73e3a8a. It will automatically
update as commits are pushed.</sup>


<!-- ELLIPSIS_HIDDEN -->
Signed-off-by: Diwank Singh Tomer <[email protected]>
<!-- ELLIPSIS_HIDDEN -->



> [!IMPORTANT]
> Fixes `create_session` in `browserbase.py` to correctly use
`browserbase_project_id` for `DEMO_PROJECT_ID`.
> 
>   - **Behavior**:
> - Fixes `create_session` in `browserbase.py` to correctly assign
`project_id` from `browserbase_project_id` when `DEMO_PROJECT_ID` is
used.
> 
> <sup>This description was created by </sup>[<img alt="Ellipsis"
src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=julep-ai%2Fjulep&utm_source=github&utm_medium=referral)<sup>
for 9794352. It will automatically
update as commits are pushed.</sup>

<!-- ELLIPSIS_HIDDEN -->
<!-- ELLIPSIS_HIDDEN -->


> [!IMPORTANT]
> Standardized cookbook file names and removed outdated files for
improved consistency and organization.
> 
>   - **File Renames**:
>     - `01-Website_Crawler_using_Spider.py` to `01-website-crawler.py`.
> - `02-Sarcastic_News_Headline_Generator.py` to
`02-sarcastic-news-headline-generator.py`.
> - `04-TripPlanner_With_Weather_And_WikiInfo.py` to
`03-trip-planning-assistant.py`.
> - `17-Hook-Generator-Trending-Reels.py` to
`04-hook-generator-trending-reels.py`.
>   - **File Deletions**:
> - Removed 13 outdated files including
`03-SmartResearcher_With_WebSearch.py`,
`05-Basic_Agent_Creation_and_Interaction.py`, and
`06-Designing_Multi-Step_Tasks.py`.
> 
> <sup>This description was created by </sup>[<img alt="Ellipsis"
src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=julep-ai%2Fjulep&utm_source=github&utm_medium=referral)<sup>
for 27fe0e6. It will automatically
update as commits are pushed.</sup>


<!-- ELLIPSIS_HIDDEN -->

---------

Co-authored-by: vedantsahai18 <[email protected]>
<!-- ELLIPSIS_HIDDEN -->



> [!IMPORTANT]
> Update `cookbooks/README.md` to add new notebooks and remove outdated
ones, with updated descriptions and links.
> 
>   - **Notebook Updates**:
> - Added `00-Devfest-Email-Assistant.ipynb`,
`04-Hook_Generator_Trending_Reels.ipynb`,
`05-Video_Processing_With_Natural_Language.ipynb`,
`06-Browser_Use.ipynb`.
> - Removed `03-SmartResearcher_With_WebSearch.ipynb`,
`04-TripPlanner_With_Weather_And_WikiInfo.ipynb`,
`05-Basic_Agent_Creation_and_Interaction.ipynb`,
`06-Designing_Multi-Step_Tasks.ipynb`,
`07-Integrating_External_Tools_and_APIs.ipynb`,
`08-Managing_Persistent_Sessions.ipynb`,
`09-User_Management_and_Personalization.ipynb`,
`10-Document_Management_and_Search.ipynb`,
`11-Advanced_Chat_Interactions.ipynb`,
`12-Monitoring_Task_Executions.ipynb`,
`13-Error_Handling_and_Recovery.ipynb`.
>   - **Misc**:
>     - Fixed table formatting in `cookbooks/README.md`.
>     - Removed trailing newline in `cookbooks/README.md`.
> 
> <sup>This description was created by </sup>[<img alt="Ellipsis"
src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=julep-ai%2Fjulep&utm_source=github&utm_medium=referral)<sup>
for 5ec16c4. It will automatically
update as commits are pushed.</sup>

<!-- ELLIPSIS_HIDDEN -->
<!-- ELLIPSIS_HIDDEN -->



> [!IMPORTANT]
> Update image source and "Explore Docs" link text in README files
across multiple languages.
> 
>   - **Image Update**:
> - Updated image source in `README-CN.md`, `README-FR.md`,
`README-JA.md`, `README.md`, and `cookbooks/README.md` to
`https://github.com/user-attachments/assets/10ba11e4-4ced-400e-a400-ee0f72541780`.
>   - **Text Changes**:
> - Added "(wip)" to "Explore Docs" link in `README.md` and its
translations.
> - Updated "Explore Docs" link text in `README-CN.md`, `README-FR.md`,
and `README-JA.md` to indicate work in progress.
> - Updated "Explore Docs" link text in `README.md` to "Explore Docs
(wip)".
> 
> <sup>This description was created by </sup>[<img alt="Ellipsis"
src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=julep-ai%2Fjulep&utm_source=github&utm_medium=referral)<sup>
for 7831671. It will automatically
update as commits are pushed.</sup>

<!-- ELLIPSIS_HIDDEN -->

---------

Co-authored-by: Diwank Singh Tomer <[email protected]>
Co-authored-by: creatorrr <[email protected]>
…nged to include imageurl in ChatInput (#835)

<!-- ELLIPSIS_HIDDEN -->


> [!IMPORTANT]
> Integrates Anthropic API into chat endpoint, updates models for image
content, and improves tool formatting and error handling.
> 
>   - **Behavior**:
> - Added Anthropic API call in `chat.py` for tool types
`computer_20241022`, `bash_20241022`, `text_editor_20241022`.
> - Updated `request_anthropic()` to format messages and call Anthropic
API.
>     - Modified tool formatting logic in `chat.py` for Anthropic tools.
>   - **Models**:
> - Added `ChatMLAnthropicImageContentPart` and related models in
`models.tsp` for Anthropic image content.
> - Updated `ChatMLContentPart` alias to include
`ChatMLAnthropicImageContentPart`.
>   - **Misc**:
> - Updated `openapi-1.0.0.yaml` to reflect changes in `ChatInput` and
related schemas.
> - Added `Source` class in `Chat.py`, `Entries.py`, and `Tasks.py` for
base64 image data.
> - Improved error handling in `execute_integration.py` and
`execute_system.py`.
> - Updated Gunicorn configuration in `gunicorn_conf.py` for testing and
debugging.
> - Added `GEMINI_API_KEY` to `.env.example` and `docker-compose.yml`.
> 
> <sup>This description was created by </sup>[<img alt="Ellipsis"
src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=julep-ai%2Fjulep&utm_source=github&utm_medium=referral)<sup>
for bc0e0d4. It will automatically
update as commits are pushed.</sup>


<!-- ELLIPSIS_HIDDEN -->

---------

Signed-off-by: Diwank Singh Tomer <[email protected]>
Co-authored-by: Ahmad-mtos <[email protected]>
Co-authored-by: Ahmad-mtos <[email protected]>
Co-authored-by: Vedantsahai18 <[email protected]>
Co-authored-by: HamadaSalhab <[email protected]>
Co-authored-by: HamadaSalhab <[email protected]>
Co-authored-by: Diwank Singh Tomer <[email protected]>
Signed-off-by: Diwank Singh Tomer <[email protected]>

<!-- ELLIPSIS_HIDDEN -->


----

> [!IMPORTANT]
> Limit free users to 50 sessions and executions, adding counting
functions and tests for these limits.
> 
>   - **Behavior**:
> - Limit free users to 50 sessions and 50 executions by adding
`MAX_FREE_SESSIONS` and `MAX_FREE_EXECUTIONS` to `.env.example` and
`env.py`.
> - Implement `count_executions()` in `count_executions.py` to count
executions for a given `developer_id` and `task_id`.
> - Implement `count_sessions()` in `count_sessions.py` to count
sessions for a given `developer_id`.
>   - **API Changes**:
> - Update `chat()` in `chat.py` to enforce session limits for free
users.
> - Update `create_task_execution()` in `create_task_execution.py` to
enforce execution limits for free users.
>   - **Tests**:
> - Add tests for `count_executions()` in `test_execution_queries.py`.
>     - Add tests for `count_sessions()` in `test_session_queries.py`.
>   - **Misc**:
> - Remove unused imports `JinjaTemplate` from `Tasks.py`, `RootModel`
from `Tools.py`, and `RemoteList` from `temporal.py`.
> 
> <sup>This description was created by </sup>[<img alt="Ellipsis"
src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=julep-ai%2Fjulep&utm_source=github&utm_medium=referral)<sup>
for 71043d0. It will automatically
update as commits are pushed.</sup>


<!-- ELLIPSIS_HIDDEN -->

---------

Signed-off-by: Diwank Singh Tomer <[email protected]>
Co-authored-by: vedantsahai18 <[email protected]>
Co-authored-by: Vedantsahai18 <[email protected]>
Co-authored-by: HamadaSalhab <[email protected]>
Copy link
Contributor

@standard-input standard-input bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues flagged.
Standard Input can make mistakes. Check important info.

Copy link
Contributor

@ellipsis-dev ellipsis-dev bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 Looks good to me! Reviewed everything up to 26a3315 in 2 minutes and 28 seconds

More details
  • Looked at 9794 lines of code in 136 files
  • Skipped 16 files when reviewing.
  • Skipped posting 8 drafted comments based on config settings.
1. agents-api/agents_api/activities/excecute_api_call.py:28
  • Draft comment:
    Increasing the timeout from 60 to 600 seconds may lead to longer wait times for API calls. Ensure this change is necessary for the application's functionality.
  • Reason this comment was not posted:
    Confidence changes required: 50%
    The change from httpx.AsyncClient(timeout=60) to httpx.AsyncClient(timeout=600) in agents-api/agents_api/activities/excecute_api_call.py and agents-api/agents_api/clients/integrations.py could lead to longer wait times for API calls, which might not be ideal in all scenarios. It's important to ensure that this change is intentional and that the increased timeout is necessary for the application's functionality.
2. agents-api/agents_api/clients/integrations.py:24
  • Draft comment:
    Increasing the timeout from 60 to 600 seconds may lead to longer wait times for API calls. Ensure this change is necessary for the application's functionality.
  • Reason this comment was not posted:
    Confidence changes required: 50%
    The change from httpx.AsyncClient(timeout=60) to httpx.AsyncClient(timeout=600) in agents-api/agents_api/clients/integrations.py could lead to longer wait times for API calls, which might not be ideal in all scenarios. It's important to ensure that this change is intentional and that the increased timeout is necessary for the application's functionality.
3. agents-api/agents_api/activities/execute_system.py:70
  • Draft comment:
    Ensure that using BackgroundTasks and awaiting bg_runner() does not introduce unintended side effects or performance issues.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    The change in agents-api/agents_api/activities/execute_system.py to use BackgroundTasks and await bg_runner() ensures that background tasks are executed properly. However, it's important to ensure that this does not introduce any unintended side effects or performance issues.
4. agents-api/agents_api/activities/execute_system.py:91
  • Draft comment:
    Ensure that using BackgroundTasks and awaiting bg_runner() does not introduce unintended side effects or performance issues.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    The change in agents-api/agents_api/activities/execute_system.py to use BackgroundTasks and await bg_runner() ensures that background tasks are executed properly. However, it's important to ensure that this does not introduce any unintended side effects or performance issues.
5. agents-api/agents_api/activities/execute_system.py:101
  • Draft comment:
    Ensure that using BackgroundTasks and awaiting bg_runner() does not introduce unintended side effects or performance issues.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    The change in agents-api/agents_api/activities/execute_system.py to use BackgroundTasks and await bg_runner() ensures that background tasks are executed properly. However, it's important to ensure that this does not introduce any unintended side effects or performance issues.
6. agents-api/agents_api/activities/task_steps/base_evaluate.py:9
  • Draft comment:
    Increasing simpleeval.MAX_STRING_LENGTH from 300000 to 2048000 could have performance implications. Ensure this change is necessary and does not negatively impact performance.
  • Reason this comment was not posted:
    Confidence changes required: 50%
    The change in agents-api/agents_api/activities/task_steps/base_evaluate.py to increase simpleeval.MAX_STRING_LENGTH from 300000 to 2048000 could have performance implications. It's important to ensure that this change is necessary and does not negatively impact performance.
7. agents-api/agents_api/activities/task_steps/prompt_step.py:23
  • Draft comment:
    Ensure that the removal of hardcoded tool handling does not affect any existing functionality that relied on these specific tool types.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    The removal of the hardcoded tool handling in agents-api/agents_api/activities/task_steps/prompt_step.py simplifies the code, but it's important to ensure that this does not affect any existing functionality that relied on these specific tool types.
8. agents-api/agents_api/activities/task_steps/prompt_step.py:67
  • Draft comment:
    Verify that handling Claude models and specific tool types aligns with the intended functionality and does not introduce logical errors.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    The change in agents-api/agents_api/activities/task_steps/prompt_step.py to handle Claude models and specific tool types should be verified to ensure it aligns with the intended functionality and does not introduce any logical errors.

Workflow ID: wflow_uRzT5F0kNcHbcp0L


You can customize Ellipsis with 👍 / 👎 feedback, review rules, user-specific overrides, quiet mode, and more.

<!-- ELLIPSIS_HIDDEN -->



> [!IMPORTANT]
> Commented out a line in `aembedding()` in `litellm.py` to prevent
errors with `voyage/voyage-3` model.
> 
>   - **Behavior**:
> - Commented out line in `aembedding()` in `litellm.py` to prevent
errors with `voyage/voyage-3` model.
>     - The line `model = f"openai/{model}"` is temporarily disabled.
>   - **Misc**:
>     - No other changes or fixes are included in this PR.
> 
> <sup>This description was created by </sup>[<img alt="Ellipsis"
src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=julep-ai%2Fjulep&utm_source=github&utm_medium=referral)<sup>
for 3d429be. It will automatically
update as commits are pushed.</sup>

<!-- ELLIPSIS_HIDDEN -->

---------

Co-authored-by: HamadaSalhab <[email protected]>
@HamadaSalhab HamadaSalhab merged commit 4ee58c8 into main Nov 22, 2024
12 of 17 checks passed
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.

3 participants