Create GraphQL endpoint for AI Explain Code

What does this MR do and why?

A GraphQL endpoint for Explain Code build on top of the AI Abstraction Layer.

In order to schedule a job for generating a response to the prompt, a GraphQL mutation is performed:

  aiAction(input: {explainCode: {prompt:"console.log('hello')", resourceId: "gid://gitlab/Project/1"}}) {
    errors
  }

The response is received via a GraphQL subscription:

  aiCompletionResponse(resourceId: "gid://gitlab/Project/1", userId: "gid://gitlab/User/1") {
    responseBody
  }
Edited by Igor Drozdov

Merge request reports

Loading