Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add client info reporting #155

Merged
merged 10 commits into from
Jun 7, 2024
Merged

Add client info reporting #155

merged 10 commits into from
Jun 7, 2024

Conversation

tylerhutcherson
Copy link
Collaborator

We need to be able to track the usage of clients for measuring adoption and impact. The CLIENT SETINFO command can be used for this purpose. The required string format is documented here.

Variants

  • Standalone RedisVL:
CLIENT SETINFO LIB-NAME redis-py(redisvl_v0.2.0)
CLIENT SETINFO LIB-VER 5.0.4
  • Abstraction layers (like LlamaIndex or LangChain):
CLIENT SETINFO LIB-NAME redis-py(redisvl_v0.2.0;llama-index-vector-stores-redis_v0.1.0)
CLIENT SETINFO LIB-VER 5.0.4

Constraints

  • RedisVL uses both Async connection and standard connection instances from Redis Py
    • So the technique to run this command needs to properly handle this...
  • Other wrappers around RedisVL like LangChain and LlamaIndex will need to pass through their lib_name
  • These libraries generally support the notion of providing your own client instance OR providing the connection string and performing the connection on your behalf -- which also adds some difficulty.

Planned Route

In order to build the proper name string, all clients that wrap redis-py will need to use the following format:

{package-name}_v{version}

RedisVL will implement the default which is redisvl_v0.x.x, but outer wrappers of RedisVL can implement their own by using a lib_name kwarg on the index class like

SearchIndex(lib_name="langchain_v0.2.1")

@tylerhutcherson tylerhutcherson added the enhancement New feature or request label Jun 4, 2024
@tylerhutcherson tylerhutcherson changed the title Feat/client setinfo Add client info reporting Jun 4, 2024
bsbodden
bsbodden previously approved these changes Jun 5, 2024
Copy link
Collaborator

@bsbodden bsbodden left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems to fit the bill! LGTM

@tylerhutcherson tylerhutcherson merged commit 934d269 into main Jun 7, 2024
20 checks passed
@tylerhutcherson tylerhutcherson deleted the feat/client-setinfo branch June 7, 2024 00:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants