- Mar 29, 2024
-
-
Jessie Young authored
- This is behind a feature flag for testing - Uses request body format needed for messages API, which is now supported by the AI Gateway: gitlab-org/modelops/applied-ml/code-suggestions/ai-assist!668 - #444629
-
- Dec 04, 2023
-
-
This adds the client information to our AI action tracking by passing forward the user agent and parsing it. For now we only distinguish between vscode and web.
-
- Nov 30, 2023
-
-
Pavel Shutsin authored
-
- Nov 15, 2023
-
-
Pavel Shutsin authored
This model will contain related state of the system for specific message
-
- Nov 14, 2023
-
-
Alejandro Rodríguez authored
-
- Nov 08, 2023
-
-
Pavel Shutsin authored
-
- Nov 07, 2023
-
-
Pavel Shutsin authored
-
Pavel Shutsin authored
Pure refactoring
-
- Oct 31, 2023
-
-
Alexandru Croitor authored
This replaces the legacy openai_experimentation FF usages with the more generic ai_global_switch ops FF Changelog: changed EE: true
-
- Oct 25, 2023
-
-
This FF is added to replace the legacy openai_experimentation
-
- Oct 12, 2023
-
-
It makes completion classes aware of prompt message object. Pure refactoring, no user facing changes.
-
- Oct 09, 2023
-
-
It reworks AI Response emitting to work with AiMessage model. No user facing changes.
-
- Oct 05, 2023
-
-
Pavel Shutsin authored
-
- Sep 28, 2023
-
-
Pavel Shutsin authored
Related functionality was removed so this codepath is not used anymore
-
- Sep 27, 2023
-
-
Sidekiq can cause issues with code reloading in development. To overcome this, it's now possible to set `LLM_DEVELOPMENT_SYNC_EXECUTION=1` in development which executes AI actions synchronously.
-
- Sep 05, 2023
-
-
* adds SLI for overall time needed to serve user's request (currently 20s) * adds histogram for overall worker duration (with service/category labels)
-
- Sep 04, 2023
-
-
Adds tracking to AI features with an approximated measurement of our token usage for Anthropic and Vertex. It enables us to group token usage per feature or per user.
-
- Aug 30, 2023
-
-
* with this change success ratio of AI requests is measured outside of exponential backoff * llm_chat_answers SLI is replaced with more generic llm_completion which tracks error ratio of all AI actions
-
- Aug 22, 2023
-
-
This adds an optional client_subscription_id to the ai_completion_response subscription. In addition to that it fixes the GraphqlTriggers to be able to deal with optional subscription arguments. This prepares us to allow listening only to a specific client_subscription_id on the websocket, and to only broadcast messages based on a user_id. This is important for the chat as well as other aiActions. This has no breaking changes, nor changes how the subscription gets used. Changelog: changed EE: true
-
- Aug 18, 2023
-
-
If the current user is viewing some code blob, the user should be able to ask the chat to explain the code. We will inject the blob's code into the zeroshot executor's prompt and ask the LLMs to directly explain the code when instructed. To make that possible, we will make use of the Referer header to detect if a user is viewing a Blob. The referer url will be added as an option to be extracted by CompletionWorker. CompletionWorker will then attempt to resolve and authorize the blob pointed to by the referer url. If the blob is found and authorized, it will be available as a context attribute, 'extra_resource'. The zeroshot executor can then use the attribute to include the code blob and additional prompt. The change is guarded with a feature flag.
-
- Aug 04, 2023
-
-
Nicolas Dular authored
We fixed this before by setting `skip_cache: true` by default in `ExecuteMethodService`. However, `SummarizeSubmittedReviewService` was not going through the `ExecuteMethodService`. As we only want to store messages from the `chat` action, and to fix this for the future, the logic is now reversed and it's required to set `cache_response: true` explicitly.
-
- Jul 27, 2023
-
-
* also updates outdated product_analytics ategory
-
- Jul 26, 2023
-
-
Nicolas Dular authored
We no longer want to store and show AI messages on the chat, if not explicitly enabled by the feature. It is now only enabled for the `chat` AI action. We do this by setting `skip_cache = true` by default. It also fixes a bug where the `skip_cache` was not passed along properly to the GraphqlSubscriptionResponseService. Changelog: fixed EE: true
-
- Jul 13, 2023
-
-
Deal with optional resource_id in service and worker Makes sure we allow using nil as resource_id in the service and the worker.
-
- Jun 26, 2023
-
-
When the Agent picks the `SummarizeComments` tool, we are internally calling the `GenerateSummaryService`, which also stores the response to the cache and broadcasts it via the GraphQL subscription. With `skip_cache: true` we were already able to not store the response to the cache. This change renames the `skip_cache` option to `internal_request` and also no longer broadcasts the response to the client, which resulted in duplicated responses in the chat.
-
- Jun 20, 2023
-
-
Nicolas Dular authored
When the Agent picks the `SummarizeComments` tool, we are internally calling the `GenerateSummaryService`, which also stores the response to the cache and broadcasts it via the GraphQL subscription. With `skip_cache: true` we were already able to not store the response to the cache. This change renames the `skip_cache` option to `internal_request` and also no longer broadcasts the response to the client, which resulted in duplicated responses in the chat.
-
- Jun 13, 2023
-
-
Jan Provaznik authored
It's possible that some AI chain tools use completion service (e.g. SummaryComments tool), in this case we want to avoid storing request/response in cache because it's only intermediate step.
-
- May 31, 2023
-
-
It removes redundant method from the code.
-
- May 23, 2023
-
-
- May 16, 2023
-
-
Adds a new logger and debugging statements for AI features.
-
- May 09, 2023
-
-
* for each AI mutation it generates a unique ID * this ID is also part of subscription message so clients can pair responses with original requests
-
- May 04, 2023
-
-
Alexandru Croitor authored
- Moved the Completions::Factory to a more generic module - Moved ExponentialBackoff to a generic AI concern
-
- Apr 13, 2023
-
-
Patrick Bajao authored
Before we make a call to AI API, we need to check if user who actually executed the action can read the resource and if the resource can actually be sent to AI (utilize `#send_to_ai?`). We already have the permission check at the mutation level and `#send_to_ai?` check in `Llm::BaseService`. But it is possible that those permissions changes after the job is enqueued. No changelog since this is still behind a feature flag.
-
- Apr 12, 2023
-
-
-
This adds backend services and sidekiq job to handle ai completion requests to OpenAI API with potential to extend it beyond OpenAI
-