# Embed data
data = [
{"id": "vec1", "text": "The plaintiff alleges breach of contract and seeks damages for financial losses incurred."},
{"id": "vec2", "text": "This Agreement shall commence on the Effective Date and remain in force unless terminated earlier."},
{"id": "vec3", "text": "Apple Inc. is named in a class-action lawsuit alleging monopolistic practices in its App Store policies."},
{"id": "vec4", "text": "All disputes arising under this Agreement shall be resolved through binding arbitration in accordance with applicable laws."},
{"id": "vec5", "text": "The parties hereby agree to maintain confidentiality regarding any proprietary information shared."},
]
import voyageai
vo = voyageai.Client(api_key=VOYAGE_API_KEY)
model_id = "voyage-law-2"
def embed(docs: list[str], input_type: str) -> list[list[float]]:
embeddings = vo.embed(
docs,
model=model_id,
input_type=input_type
).embeddings
return embeddings
# Use "document" input type for documents
embeddings = embed([d["text"] for d in data], input_type="document")
vectors = []
for d, e in zip(data, embeddings):
vectors.append({
"id": d['id'],
"values": e,
"metadata": {'text': d['text']}
})
index.upsert(
vectors=vectors,
namespace="ns1"
)