-
Notifications
You must be signed in to change notification settings - Fork 905
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 #582
dev -> main #582
Conversation
<!-- ELLIPSIS_HIDDEN --> > [!IMPORTANT] > Implement `ToolCallStep` and fix transition logic after `PromptStep` in workflow execution. > > - **ToolCallStep Implementation**: > - Implements `tool_call_step()` in `tool_call_step.py` to handle tool calls, including generating a call ID and validating tool names. > - Updates `STEP_TO_ACTIVITY` in `task_execution/__init__.py` to map `ToolCallStep` to `tool_call_step()`. > - **PromptStep Transition Fix**: > - Updates transition logic in `task_execution/__init__.py` to handle tool calls after a `PromptStep`. > - Removes unused code related to tool calls in `PromptStep` handling. > - **State Machine Update**: > - Updates `valid_transitions` in `tasks.py` to allow 'wait' to 'step' transition. > > <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 5ab9e3a. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN -->
Co-authored-by: Julep Developers <[email protected]>
Signed-off-by: Diwank Singh Tomer <[email protected]> <!-- ELLIPSIS_HIDDEN --> ---- > [!IMPORTANT] > This PR updates the handling of integrations and systems by adding new models, updating workflows, and modifying session options, along with dependency updates and a migration script. > > - **Behavior**: > - Adds `execute_integration` function in `execute_integration.py` to handle integration tool calls. > - Updates `prompt_step.py` to handle unwrapping of prompt responses and tool call results. > - Modifies `tool_call_step.py` to handle tool calls using `Tool` model. > - **Models**: > - Adds `IntegrationDef` and `SystemDef` models in `Tools.py`. > - Updates `CreateToolRequest`, `PatchToolRequest`, `UpdateToolRequest`, and `Tool` to use `IntegrationDef` and `SystemDef`. > - Adds `forward_tool_results` option to session models in `Sessions.py`. > - **Workflow**: > - Updates `TaskExecutionWorkflow` in `task_execution/__init__.py` to handle integration tool calls. > - **Dependencies**: > - Updates `@typespec/*` dependencies in `package.json` to version `0.60.x`. > - **Migration**: > - Adds migration script `migrate_1727235852_add_forward_tool_calls_option.py` to add `forward_tool_calls` option to sessions. > > <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 a49aa12. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN --> --------- Signed-off-by: Diwank Singh Tomer <[email protected]>
Introduces a new integration service with FastAPI, Docker setup, and support for multiple integrations like DALL-E and Wikipedia. - Integration Service: + Adds integrations-service with Docker setup in docker-compose.yml and Dockerfile. + FastAPI application in web.py with routers for execution and integration management. - Models: + Defines models for DalleImageGenerator, DuckDuckGoSearch, HackerNews, Weather, and Wikipedia in models directory. + IntegrationExecutionRequest and IntegrationExecutionResponse for handling execution requests. - Utilities: + Implements execute_integration in execute_integration.py to handle integration execution logic. + Integration utilities for DALL-E, DuckDuckGo, Hacker News, Weather, and Wikipedia in utils/integrations. - Configuration: + Adds pyproject.toml for dependency management with Poetry. + Adds pytype.toml for type checking configuration.
#521) - **fix(typespec,agents-api): Rename integration providers** - **feat(agents-api,integrations): Working integrations for tool-call step** <!-- ELLIPSIS_HIDDEN --> ---- > [!IMPORTANT] > Add integration service handling for tool-call steps in agents API, including provider renames and workflow updates. > > - **Integrations**: > - Implement `run_integration_service` in `clients/integrations.py` to handle integration service calls. > - Update `execute_integration` in `activities/execute_integration.py` to use `run_integration_service` for non-dummy providers. > - Add `INTEGRATION_SERVICE_URL` to `.env.example`, `env.py`, and `docker-compose.yml`. > - **Renames**: > - Rename integration providers in `Tools.py` and `scalars.tsp` (e.g., `dall-e` to `dalle_image_generator`). > - **Workflows**: > - Update `task_execution/__init__.py` to handle integration tool calls using `execute_integration`. > - **Tests**: > - Add `integration_example.yaml` for sample tasks. > - Add tests for integration tool calls in `test_execution_workflow.py`. > - Add `patch_integration_service` in `utils.py` for mocking integration service calls. > > <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 f13f8dd. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN --> --------- Signed-off-by: Diwank Singh Tomer <[email protected]>
<!-- ELLIPSIS_HIDDEN --> > [!IMPORTANT] > Removes unnecessary transition call in `WaitForInputStep` case in `TaskExecutionWorkflow.run()` and updates tests accordingly. > > - **Behavior**: > - Removes `await transition(context, type="wait", output=output)` from `WaitForInputStep` case in `run()` in `__init__.py`. > - **Tests**: > - Updates `test_execution_workflow.py` to ensure workflow behaves correctly without the removed transition call. > > <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 6600cee. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN -->
…d Upgrade to python 3.12 (#525) Signed-off-by: Diwank Singh Tomer <[email protected]> <!-- ELLIPSIS_HIDDEN --> ---- > [!IMPORTANT] > Upgrade to Python 3.12 and add support for reading setup arguments from metadata in `agents-api`. > > - **Python Version Upgrade**: > - Upgrade Python to 3.12 in `.tool-versions`, `Dockerfile`, `Dockerfile.worker`, `pyproject.toml`, and `pytype.toml`. > - **Setup Arguments from Metadata**: > - `execute_integration()` in `execute_integration.py` now reads setup arguments from metadata. > - `get_tool_args_from_metadata()` in `get_tool_args_from_metadata.py` updated to handle `arg_type` for "args" and "setup". > - **CI and Documentation**: > - Delete `generate-docs.yml` workflow. > - Update `lint-and-format.yml` to focus on `agents-api` and use Python 3.12. > - Update `pytype` version in `pyproject.toml`. > - Change `x-tool-parameters` to `x-integration-args` in `julep-concepts.md`. > - Adjust backup schedule in `docker-compose.yml` from 1h to 3h. > > <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 b1c0615. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN --> --------- Signed-off-by: Diwank Singh Tomer <[email protected]>
Introduce Docker Bake for building and pushing images with updated GitHub Actions workflows and Dockerfiles. - **GitHub Actions Workflows**: - Add `.github/workflows/dev-push-to-hub.yml` and `.github/workflows/main-push-to-hub.yml` for building and pushing images on `dev` and `main` branch merges. - Remove `push-to-hub.yml` workflow. - **Docker Build System**: - Introduce `docker-bake.hcl` for defining Docker build targets and configurations. - Update Dockerfiles in `agents-api`, `agents-api.worker`, `agents-api.migration` to use Docker Bake. - **Documentation**: - Update `CONTRIBUTING.md` with instructions for building Docker images using Docker Bake. - **Miscellaneous**: - Add submodules for `sdks/node-sdk` and `sdks/python-sdk`.
- **GitHub Actions**: - Add `docker-bake-on-pr.yml` for baking images on pull requests. - Rename `dev-push-to-hub.yml` to `bake-push-to-hub.yml` and `main-push-to-hub.yml` to `latest-push-to-hub.yml`. - Update `bake-push-to-hub.yml` and `latest-push-to-hub.yml` to use `docker/bake-action@v5` and remove branch name and git sha setting steps.
Update GitHub Actions workflow to generate changelog from release notes on release event. - **Workflow Changes**: - Renames workflow from `Changelog CI` to `Changelog on release` in `.github/workflows/changelog-ci.yml`. - Changes trigger from `pull_request` to `release` with type `published`. - **Actions**: - Updates `actions/checkout` from `v2` to `v4` with `fetch-depth: 0` and `ref: dev`. - Replaces `saadmk11/[email protected]` with `rhysd/changelog-from-release/action@v3` to generate changelog from release notes.
Co-authored-by: creatorrr <[email protected]>
Enhance workflows to bake images on release and generate changelogs from release notes. - **Workflows**: - Update `.github/workflows/bake-push-to-hub.yml` to trigger on `release` events in addition to `push` to `dev` and tags `v*`. - Update `.github/workflows/changelog-ci.yml` to trigger on `release` events and generate changelog from release notes using `rhysd/changelog-from-release/action@v3`.
Co-authored-by: creatorrr <[email protected]>
- **Workflow Addition**: - Adds `bandit-security-check-python-agents-api.yml` to `.github/workflows/`. - Triggers on pull requests to the `main` branch. - **Security Check**: - Uses `mdegis/[email protected]` to check Python code in `./agents-api/agents_api`. - Configured with `level: high` and `confidence: high`. - `exit_zero: true` allows workflow to pass even if issues are found.
- **Workflow Configuration**: - Adds `dev` branch to trigger `bandit-security-check-python-agents-api.yml` workflow. - Updates Bandit action version from `v1.1` to `v1.0.1` in the workflow.
…ons service (#540) Add new integrations for Brave, BrowserBase, and Spider, and refactor the integration service to support these changes. - **Integrations**: - Add new providers: `brave`, `browserbase`, and `spider` in `providers.py`. - Refactor existing providers: `wikipedia`, `weather`, `hacker_news`. - **Models**: - Add `BraveSearchSetup`, `BraveSearchArguments`, `BraveSearchOutput` in `brave.py`. - Add `BrowserBaseSetup`, `BrowserBaseLoadArguments`, `BrowserBaseLoadOutput` in `browserbase.py`. - Add `SpiderSetup`, `SpiderFetchArguments`, `SpiderFetchOutput` in `spider.py`. - Update `ExecutionRequest`, `ExecutionResponse` in `execution.py` to include new providers. - **Routers**: - Add `get_integration` in `get_integration.py`. - Add `get_integration_tool` in `get_integration_tool.py`. - Update `execute` in `execute.py` to handle new providers and methods. - **Utilities**: - Refactor `execute_integration` in `execute_integration.py` to dynamically load and execute provider methods. - Add integration logic for new providers in `integrations/utils/integrations/`. - **Misc**: - Update `pyproject.toml` to include new dependencies: `spider-client`, `browserbase`. - Update `scalars.tsp` and `models.tsp` to include new integration providers.
Updated the main image 1-line description
<!-- ELLIPSIS_HIDDEN --> > [!IMPORTANT] > Improves task execution updates by encoding task tokens with metadata and enhancing error handling in `raise_complete_async.py` and `update_execution.py`. > > - **Behavior**: > - In `raise_complete_async.py`, task tokens are now base64 encoded and include metadata with activity, run, and workflow IDs. > - In `update_execution.py`, added error handling for stopping and resuming executions, using metadata for async activity handle retrieval. > - **Database Queries**: > - In `get_paused_execution_token.py`, query updated to include `metadata` and sort by `created_at` with a limit of 1. > - **Error Handling**: > - Added try-except blocks in `update_execution.py` to handle exceptions when stopping or resuming executions. > > <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 f3de527. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN --> --------- Signed-off-by: Diwank Singh Tomer <[email protected]> Co-authored-by: Diwank Singh Tomer <[email protected]>
<!-- ELLIPSIS_HIDDEN --> > [!IMPORTANT] > Fixes `name` attribute in `get_job_status` in `routers.py` and updates string encoding and exception syntax in other files. > > - **Behavior**: > - Fixes `name` attribute in `get_job_status` function in `routers.py` to use `job_description.workflow_type` instead of `handle.id`. > - **Formatting**: > - Adjusts string encoding in `raise_complete_async.py` and `update_execution.py` to use double quotes for `ascii`. > - Updates exception raising syntax in `update_execution.py` for consistency. > > <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 bfc8490. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN -->
…RIBUTING.md file (#543) Added temporal payload decoding route, updated setup instructions in `CONTRIBUTING.md`, and modified Docker and FastAPI configurations. - **New Features**: - Added `/temporal/decode` route in `router.py` for decoding temporal payloads using `PydanticEncodingPayloadConverter`. - **Documentation**: - Updated `CONTRIBUTING.md` with setup instructions, including environment setup, Docker volume creation, and running the project in single or multi-tenant mode. - **Configuration**: - Added `internal.router` to `web.py` to include the new internal routes. - Updated `docker-compose.yml` to expose port `8080` for `agents-api` and `agents-api-multi-tenant` services.
<!-- ELLIPSIS_HIDDEN --> > [!IMPORTANT] > Add `README.md` to `cookbooks` with Jupyter notebook overview and Colab links. > > - **Documentation**: > - Adds `README.md` to `cookbooks` directory. > - Provides an overview of Jupyter notebooks for AI tasks. > - Includes Colab links for each notebook: `01-Website_Crawler_using_Spider.ipynb`, `02-Sarcastic_News_Headline_Generator.ipynb`, `03-SmartResearcher_With_WebSearch.ipynb`, `04-TripPlanner_With_Weather_And_WikiInfo.ipynb`. > - Contact information and contribution guidelines included. > > <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 a1ad58e. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN --> --------- Signed-off-by: Diwank Singh Tomer <[email protected]> Co-authored-by: Diwank Singh Tomer <[email protected]>
Signed-off-by: Diwank Singh Tomer <[email protected]>
Signed-off-by: Diwank Singh Tomer <[email protected]>
…pressions in task creation | Add validation for subworkflows (#570) Closes #535 <!-- ELLIPSIS_HIDDEN --> > [!IMPORTANT] > Add static validation for Python expressions and Jinja templates in task creation and validate subworkflows in `openapi_model.py` and `steps.tsp`. > > - **Validation**: > - Add `validate_python_expression()` and `validate_jinja_template()` in `openapi_model.py`. > - Integrate validation into `EvaluateStep`, `ToolCallStep`, `PromptStep`, `SetStep`, `LogStep`, `ReturnStep`, `YieldStep`, `IfElseWorkflowStep`, and `MapReduceStep` in `openapi_model.py`. > - **Models**: > - Update `CreateTaskRequest` in `openapi_model.py` to validate subworkflows using `WorkflowType`. > - Add `YieldStep` to `MappableWorkflowStep` and `NonConditionalWorkflowStep` in `steps.tsp`. > - **Misc**: > - Reorder `YieldStep` in `Tasks.py` to maintain consistency. > > <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 9952ad5. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN --> --------- Co-authored-by: Diwank Singh Tomer <[email protected]>
Signed-off-by: Diwank Singh Tomer <[email protected]> <!-- ELLIPSIS_HIDDEN --> ---- > [!IMPORTANT] > Adds detailed code reading and contributing instructions to `CONTRIBUTING.md`, covering project architecture, setup, and contribution guidelines. > > - **Documentation**: > - Adds detailed code reading instructions to `CONTRIBUTING.md`. > - Includes sections on project overview, system architecture, API specifications, core API implementation, database and storage, workflow management, testing, and additional services. > - Provides a step-by-step guide for setting up the development environment and contributing to the project. > > <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 4bb3e8c. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN --> --------- Signed-off-by: Diwank Singh Tomer <[email protected]>
…573) Signed-off-by: Diwank Singh Tomer <[email protected]> <!-- ELLIPSIS_HIDDEN --> ---- > [!IMPORTANT] > Refactor validation logic using monkeypatching and add new models and custom types in `openapi_model.py`. > > - **Validation Refactor**: > - Switch from subclassing to monkeypatching for validation functions in `EvaluateStep`, `ToolCallStep`, `PromptStep`, `SetStep`, `LogStep`, `ReturnStep`, `YieldStep`, `IfElseWorkflowStep`, and `MapReduceStep`. > - Add validators for Python expressions and Jinja templates. > - **Model Changes**: > - Add `CreateTransitionRequest` and `CreateEntryRequest` classes. > - Define custom types `ChatMLContent`, `ChatMLRole`, `ChatMLSource`, `ExecutionStatus`, and `TransitionType`. > - **Misc**: > - Allow extra fields in `CreateTaskRequest`, `PatchTaskRequest`, and `UpdateTaskRequest` using `ConfigDict`. > > <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 8c03d93. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN --> Signed-off-by: Diwank Singh Tomer <[email protected]>
… Add more non-retryable errors (#612) <!-- ELLIPSIS_HIDDEN --> > [!IMPORTANT] > Replaces retry policies with Temporal interceptors to handle non-retryable errors and updates worker to use these interceptors. > > - **Interceptors**: > - Add `CustomActivityInterceptor` and `CustomWorkflowInterceptor` in `interceptors.py` to handle non-retryable errors by raising `ApplicationError`. > - `CustomInterceptor` combines both activity and workflow interceptors. > - **Non-Retryable Errors**: > - Define `NON_RETRYABLE_ERROR_TYPES` and `is_non_retryable_error()` in `exceptions/tasks.py` to identify non-retryable errors. > - **Retry Policy**: > - Set `DEFAULT_RETRY_POLICY` to `None` in `retry_policies.py` due to conflict with interceptors. > - **Worker**: > - Update `create_worker()` in `worker.py` to use `CustomInterceptor`. > > <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 7a50b72. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN --> --------- Co-authored-by: HamadaSalhab <[email protected]>
Signed-off-by: Diwank Singh Tomer <[email protected]> <!-- ELLIPSIS_HIDDEN --> ---- > [!IMPORTANT] > Replace `docs/README.md` with a symbolic link to `README.md` for consistency and reduced redundancy. > > - **Documentation**: > - Replace `docs/README.md` with a symbolic link to `README.md` to ensure consistency and reduce redundancy. > > <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 00cba9f. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN --> --------- Signed-off-by: Diwank Singh Tomer <[email protected]>
…yable errors (#622) Added the following exceptions: - `litellm.exceptions.NotFoundError`. - `litellm.exceptions.InvalidRequestError`. - `litellm.exceptions.AuthenticationError`. - `litellm.exceptions.ServiceUnavailableError`. - `litellm.exceptions.OpenAIError`. - `litellm.exceptions.APIError`. <!-- ELLIPSIS_HIDDEN --> ---- > [!IMPORTANT] > Add LiteLLM exceptions to non-retryable errors in `tasks.py`. > > - **Exceptions**: > - Added `litellm.exceptions.NotFoundError`, `InvalidRequestError`, `AuthenticationError`, `ServiceUnavailableError`, `OpenAIError`, and `APIError` to `NON_RETRYABLE_ERROR_TYPES` in `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 018360c. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN -->
…nside `foreach` step (#625) <!-- ELLIPSIS_HIDDEN --> > [!IMPORTANT] > Add `WaitForInputStep` to `foreach` step in agents API, updating `Tasks.py`, `steps.tsp`, and OpenAPI specs. > > - **Behavior**: > - Add `WaitForInputStep` to `ForeachDo` and `ForeachDoUpdateItem` in `Tasks.py`, allowing it as a valid step in `foreach`. > - Update `SequentialWorkflowStep` alias in `steps.tsp` to include `WaitForInputStep`. > - **OpenAPI**: > - Update `openapi-0.4.0.yaml` and `openapi-1.0.0.yaml` to include `WaitForInputStep` in `ForeachDo` and `ForeachDoUpdateItem` schemas. > > <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 ac9b7c1. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN --> --------- Signed-off-by: Diwank Singh Tomer <[email protected]> Co-authored-by: Diwank Singh Tomer <[email protected]>
- **fix(agents-api): Allow url etc to be overridden by arguments** - **fix(agents-api): base64 encode http content** - **feat(agents-api): Extend stdlib** - **fix(agents-api): Fix interceptors and simplify get/set steps** - **fix(agents-api): Fix the bug where execution.output was not being set** <!-- ELLIPSIS_HIDDEN --> ---- > [!IMPORTANT] > This PR enhances API call execution, extends the standard library, improves error handling, refines execution transitions, and updates workflow execution in the `agents-api` module. > > - **API Call Execution**: > - `execute_api_call` in `excecute_api_call.py` now supports overriding `url` and `headers` via `RequestArgs`. > - HTTP content is base64 encoded before being returned. > - **Standard Library Extension**: > - `utils.py` extended with classes for `re`, `json`, `yaml`, `time`, `random`, `itertools`, `functools`, `base64`, `urllib`, `string`, `zoneinfo`, `datetime`, `math`, and `statistics`. > - **Error Handling**: > - Updated `is_non_retryable_error` in `exceptions/tasks.py` to accept `BaseException`. > - `CustomActivityInterceptor` and `CustomWorkflowInterceptor` in `interceptors.py` now handle `BaseException`. > - **Execution Transition**: > - Fixed bug in `create_execution_transition.py` where `execution.output` was not set correctly for non-error transitions. > - **Workflow Execution**: > - Removed user state management from `TaskExecutionWorkflow` in `task_execution/__init__.py`. > - Updated `continue_as_child` in `helpers.py` to handle user state via workflow memo. > - **Testing**: > - Updated tests in `test_execution_workflow.py` to cover new functionalities and ensure correct behavior. > > <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 2b78559. 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]>
Signed-off-by: Diwank Singh Tomer <[email protected]> <!-- ELLIPSIS_HIDDEN --> ---- > [!IMPORTANT] > Add Claude-generated notebooks for task execution and management using Julep client, with updates to execution handling and agent models. > > - **Behavior**: > - Adds `time.sleep()` to wait for task execution completion in `01-Website_Crawler_using_Spider.py`, `02-Sarcastic_News_Headline_Generator.py`, `03-SmartResearcher_With_WebSearch.py`, `04-TripPlanner_With_Weather_And_WikiInfo.py`, `07-Integrating_External_Tools_and_APIs.py`, `08-Managing_Persistent_Sessions.py`, `09-User_Management_and_Personalization.py`, `10-Document_Management_and_Search.py`, `11-Advanced_Chat_Interactions.py`, `12-Monitoring_Task_Executions.py`, and `13-Error_Handling_and_Recovery.py`. > - Updates print statements for execution steps in `01-Website_Crawler_using_Spider.py`, `02-Sarcastic_News_Headline_Generator.py`, `03-SmartResearcher_With_WebSearch.py`, `04-TripPlanner_With_Weather_And_WikiInfo.py`, `07-Integrating_External_Tools_and_APIs.py`, `08-Managing_Persistent_Sessions.py`, `09-User_Management_and_Personalization.py`, `10-Document_Management_and_Search.py`, `11-Advanced_Chat_Interactions.py`, `12-Monitoring_Task_Executions.py`, and `13-Error_Handling_and_Recovery.py`. > - Changes agent model to `gpt-4o` in `05-Basic_Agent_Creation_and_Interaction.py`, `06-Designing_Multi-Step_Tasks.py`, `07-Integrating_External_Tools_and_APIs.py`, `08-Managing_Persistent_Sessions.py`, `09-User_Management_and_Personalization.py`, `10-Document_Management_and_Search.py`, `11-Advanced_Chat_Interactions.py`, `12-Monitoring_Task_Executions.py`, and `13-Error_Handling_and_Recovery.py`. > - **Misc**: > - Adds "UNDER CONSTRUCTION" comments to indicate incomplete functionality in `05-Basic_Agent_Creation_and_Interaction.py`, `10-Document_Management_and_Search.py`, `11-Advanced_Chat_Interactions.py`, `12-Monitoring_Task_Executions.py`, and `13-Error_Handling_and_Recovery.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 7ffae7f. 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: Ikko Eltociear Ashimine <[email protected]> Co-authored-by: creatorrr <[email protected]>
<!-- ELLIPSIS_HIDDEN --> > [!IMPORTANT] > Fix broken `CONTRIBUTING.md` link and update Table of Contents in `README.md` and `docs/README.md`. > > - **Links**: > - Update `CONTRIBUTING.md` link to absolute URL in `README.md` and `docs/README.md`. > - **Table of Contents**: > - Add "Call for Contributors!" and "DevFest.AI October 2024" sections to TOC in `README.md` and `docs/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 e31f247. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN --> Co-authored-by: Diwank Singh Tomer <[email protected]>
<!-- ELLIPSIS_HIDDEN --> > [!IMPORTANT] > Add Prometheus and Grafana support with FastAPI metrics and Docker Compose configurations. > > - **Metrics Integration**: > - Add `prometheus-fastapi-instrumentator` to `web.py` for FastAPI metrics. > - Update `pyproject.toml` to include `prometheus-fastapi-instrumentator` dependency. > - **Docker Compose**: > - Add `prometheus/docker-compose.yml` for Prometheus configuration. > - Add `grafana/docker-compose.yml` for Grafana configuration. > - Update root `docker-compose.yml` to include Prometheus and Grafana services. > - **Traefik Configuration**: > - Update `traefik.yml.template` to route `/grafana` to Grafana service. > > <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 124ecc7. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN --> --------- Co-authored-by: Diwank Singh Tomer <[email protected]>
<!-- ELLIPSIS_HIDDEN --> > [!IMPORTANT] > `create_or_update_agent` now excludes unset fields from `default_settings`, and a test is skipped in `test_docs_queries.py`. > > - **Behavior**: > - In `create_or_update_agent`, `default_settings` now uses `model_dump(exclude_unset=True)` to exclude unset fields. > - **Tests**: > - Skips test `model: get docs` in `test_docs_queries.py` with a note to execute embedding workflow to fix it. > > <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 b49f435. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN --> --------- Co-authored-by: Diwank Singh Tomer <[email protected]> Co-authored-by: whiterabbit1983 <[email protected]>
…loads (#642) - **feat(blob-store): Add blob store for storing large blobs for agent workflows** - **feat(blob-store): Add authentication** <!-- ELLIPSIS_HIDDEN --> ---- > [!IMPORTANT] > Introduces a new blob-store service using SeaweedFS for handling large temporal payloads, with Docker and authentication setup. > > - **Blob Store Service**: > - Introduces a new blob-store service using SeaweedFS in `blob-store/Dockerfile`, `docker-compose.yml`, and `docker-compose-ha.yml`. > - Adds `entrypoint.sh` for environment variable checks and configuration file generation. > - Includes `s3.json.template` for S3 configuration. > - **Environment Configuration**: > - Updates `.env.example` with `S3_ENDPOINT`, `S3_ACCESS_KEY`, and `S3_SECRET_KEY` for blob store configuration. > - Adds `USE_BLOB_STORE_FOR_TEMPORAL` and `BLOB_STORE_CUTOFF_KB` for temporal payload handling. > - **Authentication**: > - Implements authentication in `s3.json.template` with access and secret keys for the `julep` account. > - **Miscellaneous**: > - Adds `.gitignore` entry for `/s3.json` in `blob-store/.gitignore`. > - Updates main `docker-compose.yml` to include `blob-store/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 736b9df. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN --> --------- Signed-off-by: Diwank Singh Tomer <[email protected]>
Draft PR for #600 > Some known issues that are to be fixed yet (this is just a draft PR) - The workflow takes too long for translations, approx. ~10 mins, may batch translating content be helpful? - Code blocks are exempted from translations due to unexpected translations of syntax - Hyperlinks for TOC currently aren't being translated Currently the translator uses Google AJAX Api for translations so the translations may not be "good". Best approach would perhaps be utilizing machine translation instead. <!-- ELLIPSIS_HIDDEN --> ---- > [!IMPORTANT] > Automates translation of `README.md` into multiple languages using a GitHub workflow and Python script, preserving code blocks and HTML tags. > > - **Workflow**: > - Adds `.github/workflows/translate-readme.yml` to automate translation of `README.md` on push. > - Uses `deep-translator` and `parmapper` for translation and parallel processing. > - Translates into Chinese, Japanese, and French. > - **Script**: > - `scripts/readme_translator.py` translates `README.md`, preserving code blocks and HTML tags. > - Uses `GoogleTranslator` from `deep-translator` for language translation. > - Saves translated files as `README-CN.md`, `README-JA.md`, `README-FR.md`. > - **Known Issues**: > - Translation process is slow (~10 mins), potential for batching. > - Code blocks and TOC links are not translated. > > <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 020e102. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN --> --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: itsamziii <[email protected]> Co-authored-by: Diwank Singh Tomer <[email protected]>
Signed-off-by: Diwank Singh Tomer <[email protected]>
|
GitGuardian id | GitGuardian status | Secret | Commit | Filename | |
---|---|---|---|---|---|
14144714 | Triggered | Generic Password | ca03414 | deploy/simple-docker-compose.yaml | View secret |
14144715 | Triggered | Generic Password | ca03414 | deploy/simple-docker-compose.yaml | View secret |
🛠 Guidelines to remediate hardcoded secrets
- Understand the implications of revoking this secret by investigating where it is used in your code.
- Replace and store your secrets safely. Learn here the best practices.
- Revoke and rotate these secrets.
- 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
- following these best practices for managing and storing secrets including API keys and other credentials
- install secret detection on pre-commit to catch secret before it leaves your machine and ease remediation.
🦉 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.
Signed-off-by: Diwank Singh Tomer <[email protected]>
Signed-off-by: Diwank Singh Tomer <[email protected]>
Fix #620 This is enhance the user experience to report issues. <!-- ELLIPSIS_HIDDEN --> ---- > [!IMPORTANT] > Adds new issue templates for bug reports, documentation improvements, and feature requests, enhancing user interaction and issue management. > > - **New Templates**: > - Adds `bug_report.yml` for bug reporting with fields for description, reproduction steps, expected and actual behavior, OS, browsers, and more. > - Adds `docs_improvement.yml` for documentation suggestions with fields for current section, improvement suggestion, and additional context. > - Adds `feature_request.yml` for feature proposals with fields for feature description, pitch, solution, and alternatives. > - **Configuration**: > - Adds `config.yml` to disable blank issues and provide a Discord contact link. > > <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 bf0bb0c. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN --> --------- Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Signed-off-by: Diwank Singh Tomer <[email protected]> <!-- ELLIPSIS_HIDDEN --> ---- > [!IMPORTANT] > Redefines `ChildStreamEndpoint`, updates dependencies, and removes `YieldStep` from task definitions in typespec files. > > - **Behavior**: > - Redefines `ChildStreamEndpoint` in `interfaces.tsp` to use `SSEStream<StreamEvent<T>>`. > - Removes `YieldStep` from task definitions in `endpoints.tsp` and `openapi-0.4.0.yaml`. > - **Models**: > - Adds `StreamEvent<T>` union in `types.tsp`. > - **Dependencies**: > - Updates `package.json` dependencies to `@typespec/[email protected]`, `@typespec/[email protected]`, `@typespec/[email protected]`, and others. > - **Misc**: > - Adds `TasksGetRoute` interface in `endpoints.tsp`. > - Enables `omit-unreachable-types` in `tspconfig.yaml`. > > <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 2f2eafe. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN --> Signed-off-by: Diwank Singh Tomer <[email protected]>
…or README readers. (#636) Added a Move to Top button to enhance the ease of navigation for README readers. because of readme file length. Hi 👋 @creatorrr, Please review my PR and accept my small contribution and if need any changes please let me know. Thank you <!-- ELLIPSIS_HIDDEN --> ---- > [!IMPORTANT] > Add 'Move to Top' button to README.md for easier navigation. > > - **README.md**: > - Adds a 'Move to Top' button at the end of the file for easier navigation. > > <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 809e5cf. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN -->
No description provided.