Commit Graph

67 Commits

Author SHA1 Message Date
Andreas Koepf 343853fb57 add TreeManagerConfiguration as sub-module to global pydantic settings class 2023-01-13 15:52:09 +00:00
Andreas Köpf 945c645818 returning list[FrontEndUser] from api/v1/frontend_users/ endpoint 2023-01-12 22:58:43 +01:00
Vechtomov 0d646e72f3 537: Endpoint to list frontend users (#554)
* added frontend users endpoint

* fix comparison

* added api_client_id filtration

* allow untrusted api-clients

* review fixes

Co-authored-by: Andreas Köpf <andreas.koepf@provisio.com>
2023-01-12 22:45:11 +01:00
Oliver Stanley 050d4902f3 538: Add endpoints to manage users (#601)
* Add endpoints for getting, updating, deleting users by global user ID

* Resolve formatting

* Include alembic revision script

* Updated down_revision to current alembic head

Co-authored-by: Andreas Köpf <andreas.koepf@xamla.com>
2023-01-12 21:30:07 +01:00
Andreas Köpf f32ec78988 Returning from /api/v1/frontend_users/{auth_method}/{username}
fixes #615
2023-01-11 14:46:29 +01:00
Andreas Köpf 14fa08e2e7 Message tree state machine (#555)
* add query_incomplete_rankings()

* Add SQL queries for TreeManager task selection

* first working version of TreeManager.next_task()

* remove old generate_task(), add mandatory_labels to text_labels task

* Add ConversationMessage list to Ranking tasks

* add more sophisticated sql queries to find extendible trees

* add TreeManager.query_extendible_parents()

* fix task validation, seed data insertion (reviewed)

* provide user for task selection in text-frontend

* enter 'growing' state

* enter 'aborted_low_grade' state

* enter 'ranking' state

* check tree 'growing' state upon relpy insertion

* exclude user from labeling their own messages (added DEBUG_ALLOW_SELF_LABELING setting)

* add DEBUG_ALLOW_SELF_LABELING to docker-compose.yaml

* fix ranking submission

* add query_tree_ranking_results()

* add ranked_message_ids to RankingReactionPayload

* fix reply_messages instead of prompt_messages

* incorment 'ranking_count' of ranked replies

* added logic to check_condition_for_scoring_state

* changes to msg_tree_state_machine

* pre-commit changes

* enter 'ready_for_scoring' state

* re-add HF embedding call (lost during merge)

* use prepare_conversation() helper for seed-data creation

* Partially add user specified task selection

Co-authored-by: Daniel Hug <danielpatrickhug@gmail.com>
2023-01-11 10:54:03 +01:00
Oliver Stanley e5abb2dc85 536: Add endpoint to resolve frontend user by auth method and username (#539)
* Add endpoint to resolve frontend user by auth method and username

* Require client ID for frontend user lookup

* Remove unnecessary if check

* Fix PromptRepository -> UserRepository

* Convert to protocol User

* Move User prep

* Address review comments

* 404 -> HTTP_404_NOT_FOUND
2023-01-10 18:20:56 +01:00
Nil-Andreu 4b4a564a8f [NEW] Camelcase & 2x space 2023-01-09 10:10:19 +01:00
Nil-Andreu e241a8bf28 [NEW] Adding consistency in the URLs 2023-01-08 21:01:15 +01:00
Nil-Andreu fe4d265d12 [NEW] Solving merge conflicts 2023-01-08 20:48:13 +01:00
Andreas Köpf 8906854dbf Extract UserRepository and TaskRepository from PromptRepository
* Extract classes UserRepository and TaskRepository from PromptRepository
* move close_task() to TaskRepository and get_user_leaderboard to UserRepository()
* Use UserRepository in leaderboards endpoint, add type annotation to leaderboards endpoint
2023-01-08 19:08:47 +01:00
jojopirker a677e40cff insert embedding now to new table 2023-01-08 16:46:53 +01:00
Nil-Andreu 34e7d1db8a [NEW] Except OasstError 2023-01-08 14:36:38 +01:00
jojopirker 11d55d572a message embeddings in Messages table 2023-01-08 12:28:38 +01:00
kostiak d183c343a9 Temporary fix for #506 to get the frontend working (#508) 2023-01-07 23:55:44 +01:00
Andreas Köpf d910c310c0 fix text_frontend 204 & creation of labeling tasks (#487) 2023-01-07 21:58:29 +01:00
Andreas Köpf 5e01f421aa add 'help_text' to valid_lables response 2023-01-07 21:48:11 +01:00
jojopirker 5fb0121668 #438 Frontend type (#483)
* add dev setup to readme & alembic description

* frontend_type for api_client

* readme update & missing file

* pre-commit
2023-01-07 21:33:57 +01:00
Oliver Stanley 45f2f3a60e Validate text labels in text frontend (#495)
* Validate text labels in text frontend

* Correct task type
2023-01-07 21:30:18 +01:00
Andreas Köpf 5b2cb5dd29 add api/v1/text_labels/valid_labels backend endpoint (#498)
Provides the set of valid text_lables with descriptions via a REST endpoint.
2023-01-07 21:28:24 +01:00
Daniel Hug f75a07301b Conversation messages refactor add msg ids (#500)
* update ConversationMessage in protocal.py

* updated ConversationMessage instantiations in tasks.py and util.py to include message_id and frontend_message_id

* changed message_id and frontend_message_id to type UUID

* update ConversationMessage instantiation in main.py to include message_id and frontend_message_id"

* changed frontend_message_id to type str

* ran precomit
2023-01-07 19:16:32 +01:00
Andreas Köpf 96d6717be4 Fetch conversation for seed data tasks, minor model fixes (#485)
* Fetch conversation for seed data, fix models, remove redundant payload type checks
2023-01-07 15:59:54 +01:00
Oliver Stanley 69bc799cd9 344: Create tasks for text labels (#381)
* Implement label task for initial prompts and replies

* Resolve formatting

* Include missing argument

* Modify text_labels API to match new model, update DB schema accordingly

* Send valid labels as part of label tasks

* Send correctly formatted valid_labels list

* Fix request format

* Fix request details for text-frontend reply label task

* Include message_id in tasks

* Address review comments

* Fix alembic tree
2023-01-06 18:39:04 +01:00
Yannic Kilcher 48fc4efa35 Merge pull request #419 from Vechtomov/generate-task-refactoring
Simplified random task generation
2023-01-05 22:06:21 +01:00
Vechtomov df0c48c4fa clean up 2023-01-05 22:59:12 +03:00
Vechtomov aafe93ff82 simplified random task generation 2023-01-05 22:50:51 +03:00
Nil Andreu ee50b573e1 Detoxify Rest API Client (#404)
* [NEW] utils: Endpoint Toxic Roberta

* [NEW] Constants API URL

* [NEW] Git ignore venv

* [NEW] Lint

* [NEW] Backend default args

* [NEW] HUGGINGFACE_API_ERROR

* [NEW] Requests package

* [NEW] Get Toxicity Endpoint

* [NEW] Schema:  ToxicityClassification

[NEW] Constants module

[FIX] Module

* [FIX] Test Key HF

* [NEW] settings: HUGGING_FACE_API_KEY

* [NEW] Remove requests

* [NEW] HuggingFace client

* [NEW] Cleaning code
2023-01-05 16:18:04 +01:00
Yannic Kilcher 2df4e7a735 Merge pull request #295 from croumegous/fastapi-response-model
chore: add fastapi response model to every endpoints, add openapi documentation for API response
2023-01-02 23:17:48 +01:00
croumegous fc7f8cbc1f chore: add fastapi response model to every endpoints, add openapi documentation for API response 2023-01-02 22:55:08 +01:00
yeungadrian 4715a53637 #47- Create API endpoints that return leaderboards (#250)
* Leaderboard endpoints proof of concept
- New leaderboards router
- Two endpoints /api/v1/leaderboards/assistant & /api/v1/leaderboards/prompter
- Function in prompt_repository to calculate user scores

* Separating create vs 'eventual' evaluate routes

* Adding display_name to result

* Missing / in routes

* Updating route to be experimental

* Fixing format for pre-commit
2023-01-02 22:38:54 +01:00
Jack Michaud c7ac01718c refactor: move OasstError into oasst_shared.exceptions (#289)
* refactor: move OasstError into oasst_shared.exceptions

* fix: update OasstError import

* fix: linter errors
2023-01-02 22:03:53 +01:00
kiritowu 4796146aa7 Fix getting api_key using dependencies 2023-01-03 01:17:36 +08:00
kiritowu aa6d5786c6 Add rate limiter for task request 2023-01-03 00:28:05 +08:00
Gareth Davidson 7000e10bc0 apply pre-commit rules 2023-01-02 00:01:45 +00:00
Jack Michaud ea40a22049 fix: nack and ack should return empty responses 2023-01-01 18:58:01 +01:00
Jack Michaud e15e208b20 fix: add response_model to tasks_interaction
This is required for output validation and for the mock server.
2023-01-01 18:58:01 +01:00
Andreas Köpf 7b29582cbb add to protocol.Message 2022-12-31 19:23:54 +01:00
Andreas Köpf f151fa45c8 Merge branch 'main' of https://github.com/AlexanderHOtt/Open-Assistant into AlexanderHOtt-main 2022-12-31 12:54:16 +01:00
Igor Miagkov ef3a35ff9c fixes 2022-12-31 10:31:31 +01:00
Igor Miagkov f126b21bb3 adjust names and types to new naming 2022-12-31 10:31:31 +01:00
Igor Miagkov 475f48b195 stats api method 2022-12-31 10:31:31 +01:00
Igor Miagkov 8e1d80956a split message api endpoints 2022-12-31 10:31:31 +01:00
Igor Miagkov 13d01b5a2f management api 2022-12-31 10:31:31 +01:00
Alex Ott 1bdd02c821 fix breaking api changes 2022-12-30 22:52:57 -08:00
Andreas Köpf 534c99610b missing 'user' -> 'prompter' replacement 2022-12-31 00:18:55 +01:00
Andreas Köpf ee14554e1b role='user' -> role='prompter' 2022-12-31 00:18:55 +01:00
Andreas Köpf 8b225430a4 BREAKING-CHANGES: Renaming several models/database objects + API protocol
person -> user
work_package -> task
post -> message
thread -> message_tree
2022-12-31 00:18:55 +01:00
alexandrelefourner 35e0c32a08 Updating work_package to task 2022-12-31 00:18:55 +01:00
alexandrelefourner 7743459220 Renaming post to message 2022-12-31 00:18:55 +01:00
Igor Miagkov 7867466700 added trusted api client flag 2022-12-30 00:35:30 +01:00