[Code Embeddings] Introduce a generic LLM class for embeddings generation
## Context
In AIGW, we are introducing a new `/embeddings` endpoint and moving the Vertex AI `text-embeddings-005` requests there (see https://gitlab.com/gitlab-org/modelops/applied-ml/code-suggestions/ai-assist/-/work_items/1879).
In Rails, we should add a new LLM class that sends requests to this new `/embeddings` endpoint, e.g. `Gitlab::Llm::Embeddings`.
## Proposal
- this class must be called like other llm classes, ie: `Gitlab::Llm::Embeddings.new(...).execute`
- this class must accept a parameter to indicate whether to use the `cloud_connector` AIGW url (see https://gitlab.com/groups/gitlab-org/-/epics/20110#note_3056730291 for details on default vs cloud_connector AIGW url)
- this class must handle the same batch-with-recursive-splitting logic as the `Ai::ActiveContext::Embeddings::Code::VertexText` class
- This new class should then be used in place of `Ai::ActiveContext::Embeddings::Code::VertexText`
### POC
POC MR: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224684+
issue