mirror of
https://github.com/trustgraph-ai/trustgraph.git
synced 2026-05-18 11:55:12 +02:00
Update embeddings integration for new batch embeddings interfaces (#669)
* Fix vector extraction * Fix embeddings integration
This commit is contained in:
parent
0a2ce47a88
commit
919b760c05
12 changed files with 55 additions and 56 deletions
|
|
@ -613,8 +613,8 @@ class AsyncFlowInstance:
|
|||
```
|
||||
"""
|
||||
# First convert text to embeddings vectors
|
||||
emb_result = await self.embeddings(text=text)
|
||||
vectors = emb_result.get("vectors", [])
|
||||
emb_result = await self.embeddings(texts=[text])
|
||||
vectors = emb_result.get("vectors", [[]])[0]
|
||||
|
||||
request_data = {
|
||||
"vectors": vectors,
|
||||
|
|
@ -626,20 +626,20 @@ class AsyncFlowInstance:
|
|||
|
||||
return await self.request("graph-embeddings", request_data)
|
||||
|
||||
async def embeddings(self, text: str, **kwargs: Any):
|
||||
async def embeddings(self, texts: list, **kwargs: Any):
|
||||
"""
|
||||
Generate embeddings for input text.
|
||||
Generate embeddings for input texts.
|
||||
|
||||
Converts text into a numerical vector representation using the flow's
|
||||
Converts texts into numerical vector representations using the flow's
|
||||
configured embedding model. Useful for semantic search and similarity
|
||||
comparisons.
|
||||
|
||||
Args:
|
||||
text: Input text to embed
|
||||
texts: List of input texts to embed
|
||||
**kwargs: Additional service-specific parameters
|
||||
|
||||
Returns:
|
||||
dict: Response containing embedding vector and metadata
|
||||
dict: Response containing embedding vectors
|
||||
|
||||
Example:
|
||||
```python
|
||||
|
|
@ -647,12 +647,12 @@ class AsyncFlowInstance:
|
|||
flow = async_flow.id("default")
|
||||
|
||||
# Generate embeddings
|
||||
result = await flow.embeddings(text="Sample text to embed")
|
||||
vector = result.get("embedding")
|
||||
print(f"Embedding dimension: {len(vector)}")
|
||||
result = await flow.embeddings(texts=["Sample text to embed"])
|
||||
vectors = result.get("vectors")
|
||||
print(f"Embedding dimension: {len(vectors[0][0])}")
|
||||
```
|
||||
"""
|
||||
request_data = {"text": text}
|
||||
request_data = {"texts": texts}
|
||||
request_data.update(kwargs)
|
||||
|
||||
return await self.request("embeddings", request_data)
|
||||
|
|
@ -811,8 +811,8 @@ class AsyncFlowInstance:
|
|||
```
|
||||
"""
|
||||
# First convert text to embeddings vectors
|
||||
emb_result = await self.embeddings(text=text)
|
||||
vectors = emb_result.get("vectors", [])
|
||||
emb_result = await self.embeddings(texts=[text])
|
||||
vectors = emb_result.get("vectors", [[]])[0]
|
||||
|
||||
request_data = {
|
||||
"vectors": vectors,
|
||||
|
|
|
|||
|
|
@ -283,8 +283,8 @@ class AsyncSocketFlowInstance:
|
|||
async def graph_embeddings_query(self, text: str, user: str, collection: str, limit: int = 10, **kwargs):
|
||||
"""Query graph embeddings for semantic search"""
|
||||
# First convert text to embeddings vectors
|
||||
emb_result = await self.embeddings(text=text)
|
||||
vectors = emb_result.get("vectors", [])
|
||||
emb_result = await self.embeddings(texts=[text])
|
||||
vectors = emb_result.get("vectors", [[]])[0]
|
||||
|
||||
request = {
|
||||
"vectors": vectors,
|
||||
|
|
@ -296,9 +296,9 @@ class AsyncSocketFlowInstance:
|
|||
|
||||
return await self.client._send_request("graph-embeddings", self.flow_id, request)
|
||||
|
||||
async def embeddings(self, text: str, **kwargs):
|
||||
async def embeddings(self, texts: list, **kwargs):
|
||||
"""Generate text embeddings"""
|
||||
request = {"text": text}
|
||||
request = {"texts": texts}
|
||||
request.update(kwargs)
|
||||
|
||||
return await self.client._send_request("embeddings", self.flow_id, request)
|
||||
|
|
@ -353,8 +353,8 @@ class AsyncSocketFlowInstance:
|
|||
):
|
||||
"""Query row embeddings for semantic search on structured data"""
|
||||
# First convert text to embeddings vectors
|
||||
emb_result = await self.embeddings(text=text)
|
||||
vectors = emb_result.get("vectors", [])
|
||||
emb_result = await self.embeddings(texts=[text])
|
||||
vectors = emb_result.get("vectors", [[]])[0]
|
||||
|
||||
request = {
|
||||
"vectors": vectors,
|
||||
|
|
|
|||
|
|
@ -603,8 +603,8 @@ class FlowInstance:
|
|||
"""
|
||||
|
||||
# First convert text to embeddings vectors
|
||||
emb_result = self.embeddings(text=text)
|
||||
vectors = emb_result.get("vectors", [])
|
||||
emb_result = self.embeddings(texts=[text])
|
||||
vectors = emb_result.get("vectors", [[]])[0]
|
||||
|
||||
# Query graph embeddings for semantic search
|
||||
input = {
|
||||
|
|
@ -649,8 +649,8 @@ class FlowInstance:
|
|||
"""
|
||||
|
||||
# First convert text to embeddings vectors
|
||||
emb_result = self.embeddings(text=text)
|
||||
vectors = emb_result.get("vectors", [])
|
||||
emb_result = self.embeddings(texts=[text])
|
||||
vectors = emb_result.get("vectors", [[]])[0]
|
||||
|
||||
# Query document embeddings for semantic search
|
||||
input = {
|
||||
|
|
@ -1363,8 +1363,8 @@ class FlowInstance:
|
|||
"""
|
||||
|
||||
# First convert text to embeddings vectors
|
||||
emb_result = self.embeddings(text=text)
|
||||
vectors = emb_result.get("vectors", [])
|
||||
emb_result = self.embeddings(texts=[text])
|
||||
vectors = emb_result.get("vectors", [[]])[0]
|
||||
|
||||
# Query row embeddings for semantic search
|
||||
input = {
|
||||
|
|
|
|||
|
|
@ -650,8 +650,8 @@ class SocketFlowInstance:
|
|||
```
|
||||
"""
|
||||
# First convert text to embeddings vectors
|
||||
emb_result = self.embeddings(text=text)
|
||||
vectors = emb_result.get("vectors", [])
|
||||
emb_result = self.embeddings(texts=[text])
|
||||
vectors = emb_result.get("vectors", [[]])[0]
|
||||
|
||||
request = {
|
||||
"vectors": vectors,
|
||||
|
|
@ -699,8 +699,8 @@ class SocketFlowInstance:
|
|||
```
|
||||
"""
|
||||
# First convert text to embeddings vectors
|
||||
emb_result = self.embeddings(text=text)
|
||||
vectors = emb_result.get("vectors", [])
|
||||
emb_result = self.embeddings(texts=[text])
|
||||
vectors = emb_result.get("vectors", [[]])[0]
|
||||
|
||||
request = {
|
||||
"vectors": vectors,
|
||||
|
|
@ -937,8 +937,8 @@ class SocketFlowInstance:
|
|||
```
|
||||
"""
|
||||
# First convert text to embeddings vectors
|
||||
emb_result = self.embeddings(text=text)
|
||||
vectors = emb_result.get("vectors", [])
|
||||
emb_result = self.embeddings(texts=[text])
|
||||
vectors = emb_result.get("vectors", [[]])[0]
|
||||
|
||||
request = {
|
||||
"vectors": vectors,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue