azure-cosmos-py
Ajuda seu agente a trabalhar com bancos de dados NoSQL no Azure Cosmos DB usando Python. É útil para gerenciar dados de forma distribuída e fazer consultas.
O que ela faz
Esta ferramenta permite que você gerencie dados em um banco de dados chamado Azure Cosmos DB usando Python. Você pode adicionar, ler, atualizar, excluir e pesquisar informações.
Quando usar
- ✓Quando você precisa armazenar e recuperar dados de forma organizada.
- ✓Ao construir aplicações que precisam de um banco de dados rápido e confiável.
- ✓Para gerenciar grandes volumes de informações que mudam com frequência.
Exemplo do que pedir para a IA
“Adicione um novo item de produto com nome 'Teclado Mecânico', preço 150 e categoria 'Acessórios de Computador'.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Você usa um código especial em Python para se conectar ao banco de dados. Depois, envia comandos para criar, ler, modificar ou apagar os dados que estão guardados lá.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add sickn33/agentic-awesome-skills --skill azure-cosmos-pyOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/azure-cosmos-py/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Suporte upstream incluído
Arquivos de suporte estão incluídos em caminhos relativos à skill. Veja UPSTREAM-NOTICE.md para suas fontes fixadas, licenças, hashes e alterações de importação.
Disponibilidade de material de suporte
Estes caminhos permanecem indisponíveis nesta cópia do catálogo:
<support-root>/scripts/setup_cosmos_container.py
Não invoque uma etapa que exija um desses arquivos. Obtenha o material original e revise suas dependências, licença e efeitos antes do uso. Etapas inline independentes e os auxiliares incluídos podem prosseguir dentro do escopo autorizado do usuário.
Azure Cosmos DB SDK para Python
Biblioteca cliente para a API NoSQL do Azure Cosmos DB — banco de dados globalmente distribuído e multimodelos.
Instalação
pip install azure-cosmos azure-identity
Variáveis de Ambiente
COSMOS_ENDPOINT=https://<account>.documents.azure.com:443/
COSMOS_DATABASE=mydb
COSMOS_CONTAINER=mycontainer
Autenticação
from azure.identity import DefaultAzureCredential
from azure.cosmos import CosmosClient
credential = DefaultAzureCredential()
endpoint = "https://<account>.documents.azure.com:443/"
client = CosmosClient(url=endpoint, credential=credential)
Hierarquia de Clientes
| Cliente | Propósito | Obter de |
|---|---|---|
CosmosClient |
Operações em nível de conta | Instanciação direta |
DatabaseProxy |
Operações de banco de dados | client.get_database_client() |
ContainerProxy |
Operações de contêiner/item | database.get_container_client() |
Fluxo de Trabalho Principal
Configurar Banco de Dados e Contêiner
# Get or create database
database = client.create_database_if_not_exists(id="mydb")
# Get or create container with partition key
container = database.create_container_if_not_exists(
id="mycontainer",
partition_key=PartitionKey(path="/category")
)
# Get existing
database = client.get_database_client("mydb")
container = database.get_container_client("mycontainer")
Criar Item
item = {
"id": "item-001", # Required: unique within partition
"category": "electronics", # Partition key value
"name": "Laptop",
"price": 999.99,
"tags": ["computer", "portable"]
}
created = container.create_item(body=item)
print(f"Created: {created['id']}")
Ler Item
# Read requires id AND partition key
item = container.read_item(
item="item-001",
partition_key="electronics"
)
print(f"Name: {item['name']}")
Atualizar Item (Substituir)
item = container.read_item(item="item-001", partition_key="electronics")
item["price"] = 899.99
item["on_sale"] = True
updated = container.replace_item(item=item["id"], body=item)
Upsert Item
# Create if not exists, replace if exists
item = {
"id": "item-002",
"category": "electronics",
"name": "Tablet",
"price": 499.99
}
result = container.upsert_item(body=item)
Excluir Item
container.delete_item(
item="item-001",
partition_key="electronics"
)
Consultas
Consulta Básica
# Query within a partition (efficient)
query = "SELECT * FROM c WHERE c.price < @max_price"
items = container.query_items(
query=query,
parameters=[{"name": "@max_price", "value": 500}],
partition_key="electronics"
)
for item in items:
print(f"{item['name']}: ${item['price']}")
Consulta entre Partições
# Cross-partition (more expensive, use sparingly)
query = "SELECT * FROM c WHERE c.price < @max_price"
items = container.query_items(
query=query,
parameters=[{"name": "@max_price", "value": 500}],
enable_cross_partition_query=True
)
for item in items:
print(item)
Consulta com Projeção
query = "SELECT c.id, c.name, c.price FROM c WHERE c.category = @category"
items = container.query_items(
query=query,
parameters=[{"name": "@category", "value": "electronics"}],
partition_key="electronics"
)
Ler Todos os Itens
# Read all in a partition
items = container.read_all_items() # Cross-partition
# Or with partition key
items = container.query_items(
query="SELECT * FROM c",
partition_key="electronics"
)
Chaves de Partição
Crítico: Sempre inclua a chave de partição para operações eficientes.
from azure.cosmos import PartitionKey
# Chave de partição única
container = database.create_container_if_not_exists(
id="orders",
partition_key=PartitionKey(path="/customer_id")
)
…
Perguntas frequentes
O que é 'CRUD'?
CRUD é uma sigla em inglês para Criar, Ler, Atualizar e Deletar. São as operações básicas que você faz com dados em um banco de dados.
O que é uma 'chave de partição'?
É uma informação usada para organizar e encontrar seus dados mais rapidamente dentro do banco de dados, como um índice em um livro.
Posso usar isso sem saber programar?
Esta ferramenta é para quem programa em Python. Ela facilita o trabalho de quem já sabe programar, mas não é para quem nunca programou.
Detalhes
Descrição original do autor
Azure Cosmos DB SDK for Python (NoSQL API). Use for document CRUD, queries, containers, and globally distributed data.
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #2304
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-skills
Skills parecidas
clickhouse-io
Ajuda seu agente a otimizar consultas e esquemas no banco de dados ClickHouse. Ele aplica as melhores práticas para cargas de trabalho analíticas de alta performance. Use quando consultas analíticas demoram muito.
affaan-m/ECC
scientific-db-pubmed-database
Ajuda seu agente a buscar artigos científicos na área biomédica. É útil para pesquisas que precisam de informações médicas específicas.
affaan-m/ECC
scientific-db-uspto-database
Permite ao agente consultar dados oficiais de patentes e marcas registradas dos EUA. É útil para pesquisas de propriedade intelectual.
affaan-m/ECC