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

[chore] Update vertex_ai to vertex.ai #1684

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

gyliu513
Copy link
Member

Fixes #

This is a follow up for #1574 (comment)

/cc @lmolkova

Changes

Please provide a brief description of the changes here.

Note: if the PR is touching an area that is not listed in the existing areas, or the area does not have sufficient domain experts coverage, the PR might be tagged as experts needed and move slowly until experts are identified.

Merge requirement checklist

@gyliu513 gyliu513 requested review from a team as code owners December 14, 2024 15:35
@lmolkova
Copy link
Contributor

Thanks @gyliu513 !

Please make sure to add changelog entry.

/cc @aabmass - wdyt about this rename?

@gyliu513
Copy link
Member Author

gyliu513 commented Dec 16, 2024

@lmolkova Done!

But seems the CI is reporting an compatibility issue:

Found 1 compatibility issues:
	enum attribute member 'gen_ai.system.vertex_ai' was removed
make: *** [Makefile:276: compatibility-check] Error 1

@@ -13,9 +13,9 @@ groups:
stability: experimental
value: "openai"
brief: 'OpenAI'
- id: vertex_ai
Copy link
Member Author

Choose a reason for hiding this comment

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

@lmolkova do you know if we can also need to mark vertex_ai as deprecated? if so, how to make it? This is a value and not an attribute, did not find any example for this, thanks!

@gyliu513
Copy link
Member Author

stability: experimental
value: "vertex_ai"
value: "vertex.ai"
Copy link
Member

Choose a reason for hiding this comment

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

I can't find any evidence of just "Vertex" without "AI" in GCP's docs, so vertex_ai actually seems appropriate to me. I can't imagine any other vertex.* values.

If that reasoning holds water to keep it as vertex_ai, I can verify with the team.

Copy link
Member

Choose a reason for hiding this comment

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

I also believe we should not change this to be a namespace. Vertex AI seems to be the product name.

Copy link
Member

Choose a reason for hiding this comment

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

OK I re-read and thought about it, giving this is only changing the enum value all if fine.

stability: experimental
value: "vertex_ai"
value: "vertex.ai"
Copy link
Member

Choose a reason for hiding this comment

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

While we're here, should we prefix with gcp. like we have for some other vendors?

Copy link
Member Author

Choose a reason for hiding this comment

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

+1, we can name it as gcp.vertex.ai or google.vertex.ai

Copy link
Contributor

@lmolkova lmolkova Dec 18, 2024

Choose a reason for hiding this comment

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

we're really inconsistent in semconv on prefixing things with cloud name (not intentionally). General issue - #608

E.g. we have spanner and it's ok since there is just one spanner DB.
We have gcp_pubsub for messaging because pubsub is too generic. We also have some gcp.* attributes and resources.

Both vertex.ai or vertext_ai are unique enough - they don't have to have a prefix similarly to spanner. If we add prefix, it should be gcp.

So what should we do:

  1. spanner, vertex_ai, gcp_pubsub
  2. spanner, vertex_ai, gcp.pubsub
  3. gcp.spanner, gcp.vertex_ai, gcp.pubsub
  4. gcp_spanner, gcp_vertex_ai, gcp_pubsub
  5. ...
    ?

Speaking from Azure side, we're likely to stay where we are: cosmosdb, eventhubs, az.ai.inference (use product name when it's unique enough, use az. namespace when it's not). Reasons: it's nice to be consistent, but some of these things are de-facto stable and are used wide enough to make breaking really problematic.

cc @jsuereth if he has any thoughts

Copy link
Member

Choose a reason for hiding this comment

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

There's also the cloud.platform values which look like azure_functions, gcp_cloud_functions .

Copy link
Contributor

Choose a reason for hiding this comment

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

I'm like 80% confident we can rename azure_functions to az.functions. Let me try

Copy link
Member

@joaopgrassi joaopgrassi left a comment

Choose a reason for hiding this comment

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

I'd leave the final to the experts and product folks, but to my understanding, Vertex AI is a trademark https://trademarks.justia.com/907/18/vertex-90718213.html, so making it vertex.ai is not correct.

I also looked and I think the addition of watson.ai in this PR was wrong #1574. The same applies, that is the product name, not a namespace.

Blocking it for now to avoid things getting merged.

stability: experimental
value: "vertex_ai"
value: "vertex.ai"
Copy link
Member

Choose a reason for hiding this comment

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

I also believe we should not change this to be a namespace. Vertex AI seems to be the product name.

@gyliu513
Copy link
Member Author

@joaopgrassi watsonx is actually right, please check the following links:

@joaopgrassi
Copy link
Member

Yes, I also checked those. The problem here is that I personally see the dot in the name as part of the brand name. In semconv a dot is to be used for namespacing things, so using the dot just because the brand name uses it is wrong IMO because it clashes with the deep namespace meaning the dot has in semconv.

Copy link
Member

@joaopgrassi joaopgrassi left a comment

Choose a reason for hiding this comment

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

Removing my blocker.

I got caught up and passed through me that this is just renaming the enum values of gen_ai.system. So this is fine.

What triggered my concern is that it can get us into iffy territory if we start using the product name "dot" in semconv, as we won't know its meaning.

It is of course fine if the dot is used for namespacing purposes (to add more attributes under it, or sub-namespaces).

stability: experimental
value: "vertex_ai"
value: "vertex.ai"
Copy link
Member

Choose a reason for hiding this comment

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

OK I re-read and thought about it, giving this is only changing the enum value all if fine.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Development

Successfully merging this pull request may close these issues.

4 participants