* Fix node equality check in embedding processor
* Apply minor suggestions from code review
* Make process() private, test using only public API
* Remove an unused function
* Update lib/ai/embeddingprocessor.go
Co-authored-by: Alan Parra <alan.parra@goteleport.com>
---------
Co-authored-by: Alan Parra <alan.parra@goteleport.com>
* assist: extract embedding types into a dedicated module
* assist: allow the embedding tool to query nodes from proxy cache
This commit does two things:
- Introduce a new toolsConfig structure to pass all required clients to
the tools. This can also be used to enable or disable specicifc tools,
which helps with testing
- Pass the proxy node cache and the request access checker to the
embedding tool so it can try to lookup nodes from cache in if the user
has less than 10 nodes available.
* Add tests for the opportunistic proxy node lookup
* Apply suggestions from code review
* Update lib/ai/client.go