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

[feature] Projects - Checkpoint 2 #2065

Conversation

aybruhm
Copy link
Member

@aybruhm aybruhm commented Sep 8, 2024

Description

This PR introduces backward compatibility enhancements to:

  • domains are fully scoped by project
  • and that these domains (along with their services) receive a full auth_context

Related Issues

Closes:

  • AGE-669 - Update scope in the evaluations domain database routes
  • AGE-668 - Update scope in the evaluators domain database routes
  • AGE-667 - Update scope in the applications domain database routes
  • AGE-666 - Update scope in the testsets domain database routes

Sibling PRs

Changes

  • Project-Specific Scoping

    • Scoped project_id to database entities including testsets, applications, evaluators, evaluations models and beyond.
  • Database and Migration Adjustments

    • Added migration logic to scope project_id in DB entities, add default project to scoped DB entities, update evaluators with app names, etc.
    • Moved changed models to a deprecated file and make use of it when updating evaluators with app names to ensure accurate table schema.
  • Utility Functions and Middleware

    • Implemented project utility function to get project_id from request ; path parameters, query parameters or request body.
    • Improved authentication middleware to retrieve and set project_id to request state.
  • Other Changes

    • Cleaned up route endpoints to use project_id from request.state.
    • Added AppDB and EvaluatorConfigDB to deprecated models file.
    • etc

What to QA

  • Create an app from the UI & CLI
  • Create a new variant based on an existing one
  • Save variant configurations
  • Add outputs to the testset directly from the playground
  • Create a new testset directly from the playground
  • Deploy a variant to an environment from the playground
  • Delete a variant from the playground
  • Update a testset from the testset view
  • List testsets from the testset view
  • View a specific testset from the testset view
  • View published deployments in the deployments (overview) view
  • Create an evaluator configuration
  • Delete an app
  • Upload a test set from the test set view
  • Import a test set from the test set view
  • Delete test set(s) from the test set view
  • Run Automatic Evaluation
  • View automatic evaluation results/scenarios
  • Compare automatic evaluation results
  • Run Human Evaluation
    • A/B Testing
    • Single Model Testing
  • View a single model evaluation (along with its scenarios)
  • Delete human and automatic evaluations

Acceptance Tests

Ensure that the above items work without triggering any 500 errors from the backend.

…s and evaluations models to be project-specific
Copy link

vercel bot commented Sep 8, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
agenta ✅ Ready (Inspect) Visit Preview 💬 Add feedback Sep 28, 2024 9:51am
agenta-documentation ✅ Ready (Inspect) Visit Preview 💬 Add feedback Sep 28, 2024 9:51am

Base automatically changed from feature/age-662-project-1-add-update-tables-columns to refactor/project-structure September 27, 2024 09:41
…pace for testsets has no property app_id in test_create_evaluation_with_no_llm_keys testcase
- fetch evaluators with an app_id
- delete evaluators with no app_id
@aakrem
Copy link
Collaborator

aakrem commented Sep 28, 2024

Thank you @aybruhm @jp-agenta @bekossy 👏 👏

@aakrem aakrem merged commit 964f4cd into refactor/project-structure Sep 28, 2024
10 of 11 checks passed
@aakrem aakrem deleted the oss-feature/age-667-project-2-update-scope-in-database_routers branch September 28, 2024 11:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Backend feature lgtm This PR has been approved by a maintainer size:XXL This PR changes 1000+ lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants