Skip to content

Commit

Permalink
feat(llmobs): [MLOB-1918] submit llmobs payloads from vertexai integr…
Browse files Browse the repository at this point in the history
…ation (#11528)

This PR enables submitting LLMObs spans from the Vertex AI integration.

APM tracing support for the `generate_content` /
`generate_content_async` / `send_message` / `send_message_async` of the
Vertex AI library was added in an earlier
[PR](#11236). This PR builds
off of that to additionally send LLMObs span events to LLM
Observability.


## Checklist
- [x] PR author has checked that all the criteria below are met
- The PR description includes an overview of the change
- The PR description articulates the motivation for the change
- The change includes tests OR the PR description describes a testing
strategy
- The PR description notes risks associated with the change, if any
- Newly-added code is easy to change
- The change follows the [library release note
guidelines](https://ddtrace.readthedocs.io/en/stable/releasenotes.html)
- The change includes or references documentation updates if necessary
- Backport labels are set (if
[applicable](https://ddtrace.readthedocs.io/en/latest/contributing.html#backporting))

## Reviewer Checklist
- [x] Reviewer has checked that all the criteria below are met 
- Title is accurate
- All changes are related to the pull request's stated goal
- Avoids breaking
[API](https://ddtrace.readthedocs.io/en/stable/versioning.html#interfaces)
changes
- Testing strategy adequately addresses listed risks
- Newly-added code is easy to change
- Release note makes sense to a user of the library
- If necessary, author has acknowledged and discussed the performance
implications of this PR as reported in the benchmarks PR comment
- Backport labels are set in a manner that is consistent with the
[release branch maintenance
policy](https://ddtrace.readthedocs.io/en/latest/contributing.html#backporting)
  • Loading branch information
ncybul authored Dec 2, 2024
1 parent 033006f commit b89db9f
Show file tree
Hide file tree
Showing 26 changed files with 1,281 additions and 313 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,16 @@
# This file is autogenerated by pip-compile with Python 3.11
# by the following command:
#
# pip-compile --allow-unsafe --no-annotate .riot/requirements/f12fa99.in
# pip-compile --allow-unsafe --no-annotate .riot/requirements/102c18b.in
#
annotated-types==0.7.0
attrs==24.2.0
cachetools==5.5.0
certifi==2024.8.30
charset-normalizer==3.4.0
coverage[toml]==7.6.7
coverage[toml]==7.6.8
docstring-parser==0.16
google-ai-generativelanguage==0.6.13
google-api-core[grpc]==2.23.0
google-auth==2.36.0
google-cloud-aiplatform[all]==1.71.1
Expand All @@ -36,8 +37,8 @@ proto-plus==1.25.0
protobuf==5.28.3
pyasn1==0.6.1
pyasn1-modules==0.4.1
pydantic==2.9.2
pydantic-core==2.23.4
pydantic==2.10.2
pydantic-core==2.27.1
pytest==8.3.3
pytest-asyncio==0.24.0
pytest-cov==6.0.0
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,16 @@
# This file is autogenerated by pip-compile with Python 3.12
# by the following command:
#
# pip-compile --allow-unsafe --no-annotate .riot/requirements/23eab38.in
# pip-compile --allow-unsafe --no-annotate .riot/requirements/107d415.in
#
annotated-types==0.7.0
attrs==24.2.0
cachetools==5.5.0
certifi==2024.8.30
charset-normalizer==3.4.0
coverage[toml]==7.6.7
coverage[toml]==7.6.8
docstring-parser==0.16
google-ai-generativelanguage==0.6.13
google-api-core[grpc]==2.23.0
google-auth==2.36.0
google-cloud-aiplatform[all]==1.71.1
Expand All @@ -36,8 +37,8 @@ proto-plus==1.25.0
protobuf==5.28.3
pyasn1==0.6.1
pyasn1-modules==0.4.1
pydantic==2.9.2
pydantic-core==2.23.4
pydantic==2.10.2
pydantic-core==2.27.1
pytest==8.3.3
pytest-asyncio==0.24.0
pytest-cov==6.0.0
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,17 @@
# This file is autogenerated by pip-compile with Python 3.9
# by the following command:
#
# pip-compile --allow-unsafe --no-annotate .riot/requirements/692fe7a.in
# pip-compile --allow-unsafe --no-annotate .riot/requirements/1b0d9c1.in
#
annotated-types==0.7.0
attrs==24.2.0
cachetools==5.5.0
certifi==2024.8.30
charset-normalizer==3.4.0
coverage[toml]==7.6.7
coverage[toml]==7.6.8
docstring-parser==0.16
exceptiongroup==1.2.2
google-ai-generativelanguage==0.6.13
google-api-core[grpc]==2.23.0
google-auth==2.36.0
google-cloud-aiplatform[all]==1.71.1
Expand All @@ -37,8 +38,8 @@ proto-plus==1.25.0
protobuf==5.28.3
pyasn1==0.6.1
pyasn1-modules==0.4.1
pydantic==2.9.2
pydantic-core==2.23.4
pydantic==2.10.2
pydantic-core==2.27.1
pytest==8.3.3
pytest-asyncio==0.24.0
pytest-cov==6.0.0
Expand Down
64 changes: 64 additions & 0 deletions .riot/requirements/1bee666.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
#
# This file is autogenerated by pip-compile with Python 3.9
# by the following command:
#
# pip-compile --allow-unsafe --no-annotate .riot/requirements/1bee666.in
#
annotated-types==0.7.0
attrs==24.2.0
cachetools==5.5.0
certifi==2024.8.30
charset-normalizer==3.4.0
coverage[toml]==7.6.8
docstring-parser==0.16
exceptiongroup==1.2.2
google-ai-generativelanguage==0.6.10
google-api-core[grpc]==2.23.0
google-api-python-client==2.154.0
google-auth==2.36.0
google-auth-httplib2==0.2.0
google-cloud-aiplatform[all]==1.71.1
google-cloud-bigquery==3.27.0
google-cloud-core==2.4.1
google-cloud-resource-manager==1.13.1
google-cloud-storage==2.18.2
google-crc32c==1.6.0
google-generativeai==0.8.3
google-resumable-media==2.7.2
googleapis-common-protos[grpc]==1.66.0
grpc-google-iam-v1==0.13.1
grpcio==1.68.0
grpcio-status==1.68.0
httplib2==0.22.0
hypothesis==6.45.0
idna==3.10
iniconfig==2.0.0
mock==5.1.0
numpy==2.0.2
opentracing==2.4.0
packaging==24.2
pillow==11.0.0
pluggy==1.5.0
proto-plus==1.25.0
protobuf==5.28.3
pyasn1==0.6.1
pyasn1-modules==0.4.1
pydantic==2.10.2
pydantic-core==2.27.1
pyparsing==3.2.0
pytest==8.3.3
pytest-asyncio==0.24.0
pytest-cov==6.0.0
pytest-mock==3.14.0
python-dateutil==2.9.0.post0
requests==2.32.3
rsa==4.9
shapely==2.0.6
six==1.16.0
sortedcontainers==2.4.0
tomli==2.1.0
tqdm==4.67.1
typing-extensions==4.12.2
uritemplate==4.1.1
urllib3==2.2.3
vertexai==1.71.1
48 changes: 0 additions & 48 deletions .riot/requirements/1e15a25.txt

This file was deleted.

50 changes: 0 additions & 50 deletions .riot/requirements/1f54e6b.txt

This file was deleted.

62 changes: 62 additions & 0 deletions .riot/requirements/55b8536.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
#
# This file is autogenerated by pip-compile with Python 3.12
# by the following command:
#
# pip-compile --allow-unsafe --no-annotate .riot/requirements/55b8536.in
#
annotated-types==0.7.0
attrs==24.2.0
cachetools==5.5.0
certifi==2024.8.30
charset-normalizer==3.4.0
coverage[toml]==7.6.8
docstring-parser==0.16
google-ai-generativelanguage==0.6.10
google-api-core[grpc]==2.23.0
google-api-python-client==2.154.0
google-auth==2.36.0
google-auth-httplib2==0.2.0
google-cloud-aiplatform[all]==1.71.1
google-cloud-bigquery==3.27.0
google-cloud-core==2.4.1
google-cloud-resource-manager==1.13.1
google-cloud-storage==2.18.2
google-crc32c==1.6.0
google-generativeai==0.8.3
google-resumable-media==2.7.2
googleapis-common-protos[grpc]==1.66.0
grpc-google-iam-v1==0.13.1
grpcio==1.68.0
grpcio-status==1.68.0
httplib2==0.22.0
hypothesis==6.45.0
idna==3.10
iniconfig==2.0.0
mock==5.1.0
numpy==2.1.3
opentracing==2.4.0
packaging==24.2
pillow==11.0.0
pluggy==1.5.0
proto-plus==1.25.0
protobuf==5.28.3
pyasn1==0.6.1
pyasn1-modules==0.4.1
pydantic==2.10.2
pydantic-core==2.27.1
pyparsing==3.2.0
pytest==8.3.3
pytest-asyncio==0.24.0
pytest-cov==6.0.0
pytest-mock==3.14.0
python-dateutil==2.9.0.post0
requests==2.32.3
rsa==4.9
shapely==2.0.6
six==1.16.0
sortedcontainers==2.4.0
tqdm==4.67.1
typing-extensions==4.12.2
uritemplate==4.1.1
urllib3==2.2.3
vertexai==1.71.1
62 changes: 62 additions & 0 deletions .riot/requirements/6820ef2.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
#
# This file is autogenerated by pip-compile with Python 3.11
# by the following command:
#
# pip-compile --allow-unsafe --no-annotate .riot/requirements/6820ef2.in
#
annotated-types==0.7.0
attrs==24.2.0
cachetools==5.5.0
certifi==2024.8.30
charset-normalizer==3.4.0
coverage[toml]==7.6.8
docstring-parser==0.16
google-ai-generativelanguage==0.6.10
google-api-core[grpc]==2.23.0
google-api-python-client==2.154.0
google-auth==2.36.0
google-auth-httplib2==0.2.0
google-cloud-aiplatform[all]==1.71.1
google-cloud-bigquery==3.27.0
google-cloud-core==2.4.1
google-cloud-resource-manager==1.13.1
google-cloud-storage==2.18.2
google-crc32c==1.6.0
google-generativeai==0.8.3
google-resumable-media==2.7.2
googleapis-common-protos[grpc]==1.66.0
grpc-google-iam-v1==0.13.1
grpcio==1.68.0
grpcio-status==1.68.0
httplib2==0.22.0
hypothesis==6.45.0
idna==3.10
iniconfig==2.0.0
mock==5.1.0
numpy==2.1.3
opentracing==2.4.0
packaging==24.2
pillow==11.0.0
pluggy==1.5.0
proto-plus==1.25.0
protobuf==5.28.3
pyasn1==0.6.1
pyasn1-modules==0.4.1
pydantic==2.10.2
pydantic-core==2.27.1
pyparsing==3.2.0
pytest==8.3.3
pytest-asyncio==0.24.0
pytest-cov==6.0.0
pytest-mock==3.14.0
python-dateutil==2.9.0.post0
requests==2.32.3
rsa==4.9
shapely==2.0.6
six==1.16.0
sortedcontainers==2.4.0
tqdm==4.67.1
typing-extensions==4.12.2
uritemplate==4.1.1
urllib3==2.2.3
vertexai==1.71.1
Loading

0 comments on commit b89db9f

Please sign in to comment.