Initial commit

This commit is contained in:
2025-09-25 23:39:12 +00:00
commit 3ec2687226
12 changed files with 1723 additions and 0 deletions

16
scripts/client.py Normal file
View File

@@ -0,0 +1,16 @@
import asyncio
from fastmcp import Client
from fastembed import TextEmbedding
embedding_model = TextEmbedding()
client = Client("http://localhost:8000/sse")
async def call_tool(input: str, collection: str):
embedding: list[float] = list(embedding_model.embed(input))[0].tolist()
async with client:
result = await client.call_tool("semantic_search", {"embedding": embedding, "collection": collection})
print(result)
asyncio.run(call_tool("Dime sobre las cucarachas", "dummy_collection"))

View File

@@ -0,0 +1,40 @@
from qdrant_client import QdrantClient
from fastembed import TextEmbedding
from qdrant_client.models import Distance, VectorParams, PointStruct
from qdrant_mcp.config import Settings
settings = Settings()
embedding_model = TextEmbedding()
client = QdrantClient(url=settings.url, api_key=settings.api_key)
documents: list[str] = [
"Rick es el mas guapo",
"Los pulpos tienen tres corazones y sangre azul",
"Las cucarachas pueden vivir hasta una semana sin cabeza",
"Los koalas tienen huellas dactilares casi idénticas a las humanas",
"La miel nunca se echa a perder, incluso después de miles de años"
]
embeddings = list(embedding_model.embed(documents))
size = len(embeddings[0])
_ = client.recreate_collection(
collection_name="dummy_collection",
vectors_config=VectorParams(
distance=Distance.COSINE,
size=size
)
)
for idx, (emb, document) in enumerate(zip(embeddings, documents)):
_ = client.upsert(
collection_name="dummy_collection",
points=[
PointStruct(
id=idx,
vector=emb,
payload={
"text": document
}
)
]
)