LaminDB
Visão Geral
LaminDB é um framework de dados de código aberto para biologia projetado para tornar dados consultáveis, rastreáveis, reproduzíveis e FAIR (Encontráveis, Acessíveis, Interoperáveis, Reutilizáveis). Fornece uma plataforma unificada que combina arquitetura lakehouse, rastreamento de linhagem, feature stores, ontologias biológicas, capacidades LIMS (Laboratory Information Management System) e ELN (Electronic Lab Notebook) através de uma única API Python.
Proposta de Valor Principal:
- Consultabilidade: Pesquisar e filtrar datasets por metadados, features e termos de ontologia
- Rastreabilidade: Rastreamento automático de linhagem de dados brutos até análise e resultados
- Reprodutibilidade: Controle de versão para dados, código e ambiente
- Conformidade FAIR: Anotações padronizadas usando ontologias biológicas
Quando Usar Esta Habilidade
Use esta habilidade quando:
- Gerenciar datasets biológicos: scRNA-seq, bulk RNA-seq, transcriptômica espacial, citometria de fluxo, dados multimodais, dados de prontuário eletrônico
- Rastrear workflows computacionais: Notebooks, scripts, execução de pipeline (Nextflow, Snakemake, Redun)
- Curar e validar dados: Validação de esquema, padronização, anotação baseada em ontologia
- Trabalhar com ontologias biológicas: Genes, proteínas, tipos de célula, tecidos, doenças, pathways (via Bionty)
- Construir data lakehouses: Interface de consulta unificada em múltiplos datasets
- Garantir reprodutibilidade: Versionamento automático, rastreamento de linhagem, captura de ambiente
- Integrar pipelines ML: Conectar com Weights & Biases, MLflow, HuggingFace, scVI-tools
- Fazer deploy de infraestrutura de dados: Configurar sistemas de gerenciamento de dados locais ou baseados em nuvem
- Colaborar em datasets: Compartilhar dados curados e anotados com metadados padronizados
Capacidades Principais
LaminDB oferece seis áreas de capacidade interconectadas, cada uma documentada em detalhes na pasta references.
1. Conceitos Centrais e Linhagem de Dados
Entidades principais:
- Artifacts: Datasets versionados (DataFrame, AnnData, Parquet, Zarr, etc.)
- Records: Entidades experimentais (amostras, perturbações, instrumentos)
- Runs & Transforms: Rastreamento de linhagem computacional (qual código produziu quais dados)
- Features: Campos de metadados tipados para anotação e consulta
Workflows principais:
- Criar e versionar artifacts de arquivos ou objetos Python
- Rastrear execução de notebook/script com
ln.track() e ln.finish()
- Anotar artifacts com features tipadas
- Visualizar gráficos de linhagem de dados com
artifact.view_lineage()
- Consultar por proveniência (encontrar todos os outputs de código/inputs específicos)
Referência: references/core-concepts.md - Leia para informações detalhadas sobre artifacts, records, runs, transforms, features, versionamento e rastreamento de linhagem.
2. Gerenciamento de Dados e Consultas
Capacidades de consulta:
- Exploração e lookup de registry com auto-complete
- Recuperação de registro único com
get(), one(), one_or_none()
- Filtragem com operadores de comparação (
__gt, __lte, __contains, __startswith)
- Consultas baseadas em features (consultar por metadados anotados)
- Traversal entre registries com sintaxe de duplo underscore
- Busca de texto completo em registries
- Consultas lógicas avançadas com objetos Q (AND, OR, NOT)
- Streaming de datasets grandes sem carregar em memória
Workflows principais:
- Navegar artifacts com filtros e ordenação
- Consultar por features, data de criação, criador, tamanho, etc.
- Fazer streaming de arquivos grandes em chunks ou com slicing de array
- Organizar dados com chaves hierárquicas
- Agrupar artifacts em collections
Referência: references/data-management.md - Leia para padrões de consulta abrangentes, exemplos de filtragem, estratégias de streaming e melhores práticas de organização de dados.
3. Anotação e Validação
Processo de curação:
- Validação: Confirmar que datasets correspondem aos esquemas desejados
- Padronização: Corrigir typos, mapear sinônimos para termos canônicos
- Anotação: Vincular datasets a entidades de metadados para consultabilidade
Tipos de esquema:
- Esquemas flexíveis: Validar apenas colunas conhecidas, permitir metadados adicionais
- Esquemas minimamente necessários: Especificar colunas essenciais, permitir extras
- Esquemas rígidos: Controle completo sobre estrutura e valores
Tipos de dados suportados:
- DataFrames (Parquet, CSV)
- AnnData (genômica de célula única)
- MuData (multimodal)
- SpatialData (transcriptômica espacial)
- TileDB-SOMA (arrays escaláveis)
Workflows principais:
- Definir features e esquemas para validação de dados
- Usar
DataFrameCurator ou AnnDataCurator para validação
- Padronizar valores com
.cat.standardize()
- Mapear para ontologias com
.cat.add_ontology()
- Salvar artifacts curados com vinculação de esquema
- Consultar datasets validados por features
Referência: references/annotation-validation.md - Leia para workflows de curação detalhados, padrões de design de esquema, tratamento de erros de validação e melhores práticas.
4. Ontologias Biológicas
Ontologias disponíveis (via Bionty):
- Genes (Ensembl), Proteínas (UniProt)
- Tipos de célula (CL), Linhagens celulares (CLO)
- Tecidos (Uberon), Doenças (Mondo, DOID)
- Fenótipos (HPO), Pathways (GO)
- Fatores experimentais (EFO), Estágios de desenvolvimento
- Organismos (NCBItaxon), Drogas (DrugBank)
Workflows principais:
- Importar ontologias públicas com
bt.CellType.import_source()
- Pesquisar ontologias com correspondência de palavra-chave ou exata
- Padronizar termos usando mapeamento de sinônimos
- Explorar relacionamentos hierárquicos (pais, filhos, ancestrais)
- Validar dados contra termos de ontologia
- Anotar datasets com registros de ontologia
- Criar termos e hierarquias customizadas
- Tratar contextos multiorganismo (humano, camundongo, etc.)
Referência: references/ontologies.md - Leia para operações abrangentes de ontologia, estratégias de padronização, navegação de hierarquia e workflows de anotação.
5. Integrações
Orquestradores de workflow:
- Nextflow: Rastrear processos e outputs de pipeline
- Snakemake: Integrar em regras de Snakemake
- Redun: Combinar com rastreamento de tarefas de Redun
Plataformas MLOps:
- Weights & Biases: Vincular experimentos com artifacts de dados
- MLflow: Rastrear modelos e experimentos
- HuggingFace: Rastrear fine-tuning de modelos
- scVI-tools: Workflows de análise de célula única
Sistemas de armazenamento:
- Sistema de arquivos local, AWS S3, Google Cloud Storage
- Compatível com S3 (MinIO, Cloudflare R2)
- Endpoints HTTP/HTTPS (somente leitura)
- Datasets HuggingFace
Array stores:
- TileDB-SOMA (com suporte cellxgene)
- DuckDB para consultas SQL em arquivos Parquet
Visualização:
- Vitessce para visualização interativa espacial/célula única
Controle de versão:
- Integração Git para rastreamento de código-fonte
Referência: references/integrations.md - Leia para padrões de integração, exemplos de código e troubleshooting para sistemas de terceiros.
6. Configuração e Deployment
Instalação:
- Básico:
uv pip install lamindb
- Com extras:
uv pip install 'lamindb[gcp,zarr,fcs]'
- Módulos: bionty, wetlab, clinical
Tipos de instância:
- SQLite local (desenvolvimento)
- Cloud storage + SQLite (pequenas equipes)
- Cloud storage + PostgreSQL (produção)
Opções de armazenamento:
- Sistema de arquivos local
- AWS S3 com regiões e permissões configuráveis
- Google Cloud Storage
- Endpoints compatíveis com S3 (MinIO, Cloudflare R2)
Configuração:
- Gerenciamento de cache para arquivos em nuvem
- Configurações de sistema multiusuário
- Sincronização de repositório Git
- Variáveis de ambiente
Padrões de deployment:
- Migração dev local → produção em nuvem
- Deployments multi-região
- Armazenamento compartilhado com instâncias pessoais
Referência: references/setup-deployment.md - Leia para instalação detalhada, configuração, setup de armazenamento, gerenciamento de banco de dados, melhores práticas de segurança e troubleshooting.
Workflows de Casos de Uso Comuns
Caso de Uso 1: Análise de RNA-seq de Célula Única com Validação de Ontologia
import lamindb as ln
import bionty as bt
import anndata as ad
# Iniciar rastreamento
ln.track(params={"analysis": "scRNA-seq QC and annotation"})
# Importar ontologia de tipo de célula
bt.CellType.import_source()
# Carregar dados
adata = ad.read_h5ad("raw_counts.h5ad")
# Validar e padronizar tipos de célula
adata.obs["cell_type"] = bt.CellType.standardize(adata.obs["cell_type"])
# Curar com esquema
curator = ln.curators.AnnDataCurator(adata, schema)
curator.validate()
artifact = curator.save_artifact(key="scrna/validated.h5ad")
# Vincular anotações de ontologia
cell_types = bt.CellType.from_values(adata.obs.cell_type)
artifact.feature_sets.add_ontology(cell_types)
ln.finish()
Caso de Uso 2: Construindo um Data Lakehouse Consultável
import lamindb as ln
# Registrar múltiplos experimentos
for i, file in enumerate(data_files):
artifact = ln.Artifact.from_anndata(
ad.read_h5ad(file),
key=f"scrna/batch_{i}.h5ad",
description=f"scRNA-seq batch {i}"
).save()
# Anotar com features
artifact.features.add_values({
"batch": i,
"tissue": tissues[i],
"condition": conditions[i]
})
# Consultar em todos os experimentos
immune_datasets = ln.Artifact.filter(
key__startswith="scrna/",
tissue="PBMC",
condition="treated"
).to_dataframe()
# Carregar datasets específicos
for artifact in immune_datasets:
adata = artifact.load()
# Analisar
Caso de Uso 3: Pipeline ML com Integração W&B
import lamindb as ln
import wandb
# Inicializar ambos os sistemas
wandb.init(project="drug-response", name="exp-42")
ln.track(params={"model": "random_forest", "n_estimators": 100})
# Carregar dados de treinamento do LaminDB
train_artifact = ln.Artifact.get(key="datasets/train.parquet")
train_data = train_artifact.load()
# Treinar modelo
model = train_model(train_data)
# Fazer log em W&B
wandb.log({"accuracy": 0.95})
# Salvar modelo no LaminDB com vinculação a W&B
import joblib
joblib.dump(model, "model.pkl")
model_artifact = ln.Artifact("model.pkl", key="models/exp-42.pkl").save()
model_artifact.features.add_values({"wandb_run_id": wandb.run.id})
ln.finish()
wandb.finish()
Caso de Uso 4: Integração com Pipeline Nextflow
# Em script de processo Nextflow
import lamindb as ln
ln.track()
# Carregar artifact de entrada
input_artifact = ln.Artifact.get(key="raw/batch_${batch_id}.fastq.gz")
input_path = input_artifact.cache()
# Processar (alinhamento, quantificação, etc.)
# ... lógica de processo Nextflow ...
# Salvar output
output_artifact = ln.Artifact(
"counts.csv",
key="processed/batch_${batch_id}_counts.csv"
).save()
ln.finish()
Checklist de Começando
Para começar a usar LaminDB efetivamente:
Instalação & Configuração (references/setup-deployment.md)
- Instalar LaminDB e extras necessários
- Autenticar com
lamin login
- Inicializar instância com
lamin init --storage ...
Aprender Conceitos Centrais (references/core-concepts.md)
- Entender Artifacts, Records, Runs, Transforms
- Praticar criação e recuperação de artifacts
- Implementar
ln.track() e ln.finish() em workflows
Dominar Consultas (references/data-management.md)
- Praticar filtragem e pesquisa de registries
- Aprender consultas baseadas em features
- Experimentar streaming de arquivos grandes
Configurar Validação (references/annotation-validation.md)
- Definir features relevantes ao domínio de pesquisa
- Criar esquemas para tipos de dados
- Praticar workflows de curação
Integrar Ontologias (references/ontologies.md)
- Importar ontologias biológicas relevantes (genes, tipos de célula, etc.)
- Validar anotações existentes
- Padronizar metadados com termos de ontologia
Conectar Ferramentas (references/integrations.md)
- Integrar com orquestradores de workflow existentes
- Vincular plataformas ML para rastreamento de experimentos
- Configurar armazenamento em nuvem e compute
Princípios Principais
Siga esses princípios ao trabalhar com LaminDB:
Rastreie tudo: Use ln.track() no início de toda análise para captura automática de linhagem
Valide cedo: Defina esquemas e valide dados antes de análise extensa
Use ontologias: Aproveite ontologias biológicas públicas para anotações padronizadas
Organize com chaves: Estruture chaves de artifact hierarquicamente (ex: project/experiment/batch/file.h5ad)
Consulte metadados primeiro: Filtre e pesquise antes de carregar arquivos grandes
Versione, não duplique: Use versionamento integrado em vez de criar novas chaves para modificações
Anote com features: Defina features tipadas para metadados consultáveis
Documente completamente: Adicione descrições a artifacts, esquemas e transforms
Aproveite a linhagem: Use view_lineage() para entender proveniência de dados
Comece localmente, escale para nuvem: Desenvolva localmente com SQLite, faça deploy em nuvem com PostgreSQL
Arquivos de Referência
Esta habilidade inclui documentação de referência abrangente organizada por capacidade:
references/core-concepts.md - Artifacts, records, runs, transforms, features, versionamento, linhagem
references/data-management.md - Consultas, filtragem, pesquisa, streaming, organização de dados
references/annotation-validation.md - Design de esquema, workflows de curação, estratégias de validação
references/ontologies.md - Gerenciamento de ontologia biológica, padronização, hierarquias
references/integrations.md - Orquestradores de workflow, plataformas MLOps, sistemas de armazenamento, ferramentas
references/setup-deployment.md - Instalação, configuração, deployment, troubleshooting
Leia o(s) arquivo(s) de referência relevante(s) baseado na capacidade específica de LaminDB necessária para a tarefa em mãos.
Recursos Adicionais
1---2name: lamindb3description: Esta habilidade deve ser usada ao trabalhar com LaminDB, um framework de dados de código aberto para biologia que torna dados consultáveis, rastreáveis, reproduzíveis e FAIR. Use ao gerenciar datasets biológicos (scRNA-seq, espacial, citometria de fluxo, etc.), rastrear workflows computacionais, curar e validar dados com ontologias biológicas, construir data lakehouses, ou garantir linhagem de dados e reprodutibilidade em pesquisa biológica. Aborda gerenciamento de dados, anotação, ontologias (genes, tipos de célula, doenças, tecidos), validação de esquema, integrações com orquestradores de workflow (Nextflow, Snakemake) e plataformas MLOps (W&B, MLflow), e estratégias de deployment.4---56# LaminDB78## Visão Geral910LaminDB é um framework de dados de código aberto para biologia projetado para tornar dados consultáveis, rastreáveis, reproduzíveis e FAIR (Encontráveis, Acessíveis, Interoperáveis, Reutilizáveis). Fornece uma plataforma unificada que combina arquitetura lakehouse, rastreamento de linhagem, feature stores, ontologias biológicas, capacidades LIMS (Laboratory Information Management System) e ELN (Electronic Lab Notebook) através de uma única API Python.1112**Proposta de Valor Principal:**13- **Consultabilidade**: Pesquisar e filtrar datasets por metadados, features e termos de ontologia14- **Rastreabilidade**: Rastreamento automático de linhagem de dados brutos até análise e resultados15- **Reprodutibilidade**: Controle de versão para dados, código e ambiente16- **Conformidade FAIR**: Anotações padronizadas usando ontologias biológicas1718## Quando Usar Esta Habilidade1920Use esta habilidade quando:2122- **Gerenciar datasets biológicos**: scRNA-seq, bulk RNA-seq, transcriptômica espacial, citometria de fluxo, dados multimodais, dados de prontuário eletrônico23- **Rastrear workflows computacionais**: Notebooks, scripts, execução de pipeline (Nextflow, Snakemake, Redun)24- **Curar e validar dados**: Validação de esquema, padronização, anotação baseada em ontologia25- **Trabalhar com ontologias biológicas**: Genes, proteínas, tipos de célula, tecidos, doenças, pathways (via Bionty)26- **Construir data lakehouses**: Interface de consulta unificada em múltiplos datasets27- **Garantir reprodutibilidade**: Versionamento automático, rastreamento de linhagem, captura de ambiente28- **Integrar pipelines ML**: Conectar com Weights & Biases, MLflow, HuggingFace, scVI-tools29- **Fazer deploy de infraestrutura de dados**: Configurar sistemas de gerenciamento de dados locais ou baseados em nuvem30- **Colaborar em datasets**: Compartilhar dados curados e anotados com metadados padronizados3132## Capacidades Principais3334LaminDB oferece seis áreas de capacidade interconectadas, cada uma documentada em detalhes na pasta references.3536### 1. Conceitos Centrais e Linhagem de Dados3738**Entidades principais:**39- **Artifacts**: Datasets versionados (DataFrame, AnnData, Parquet, Zarr, etc.)40- **Records**: Entidades experimentais (amostras, perturbações, instrumentos)41- **Runs & Transforms**: Rastreamento de linhagem computacional (qual código produziu quais dados)42- **Features**: Campos de metadados tipados para anotação e consulta4344**Workflows principais:**45- Criar e versionar artifacts de arquivos ou objetos Python46- Rastrear execução de notebook/script com `ln.track()` e `ln.finish()`47- Anotar artifacts com features tipadas48- Visualizar gráficos de linhagem de dados com `artifact.view_lineage()`49- Consultar por proveniência (encontrar todos os outputs de código/inputs específicos)5051**Referência:** `references/core-concepts.md` - Leia para informações detalhadas sobre artifacts, records, runs, transforms, features, versionamento e rastreamento de linhagem.5253### 2. Gerenciamento de Dados e Consultas5455**Capacidades de consulta:**56- Exploração e lookup de registry com auto-complete57- Recuperação de registro único com `get()`, `one()`, `one_or_none()`58- Filtragem com operadores de comparação (`__gt`, `__lte`, `__contains`, `__startswith`)59- Consultas baseadas em features (consultar por metadados anotados)60- Traversal entre registries com sintaxe de duplo underscore61- Busca de texto completo em registries62- Consultas lógicas avançadas com objetos Q (AND, OR, NOT)63- Streaming de datasets grandes sem carregar em memória6465**Workflows principais:**66- Navegar artifacts com filtros e ordenação67- Consultar por features, data de criação, criador, tamanho, etc.68- Fazer streaming de arquivos grandes em chunks ou com slicing de array69- Organizar dados com chaves hierárquicas70- Agrupar artifacts em collections7172**Referência:** `references/data-management.md` - Leia para padrões de consulta abrangentes, exemplos de filtragem, estratégias de streaming e melhores práticas de organização de dados.7374### 3. Anotação e Validação7576**Processo de curação:**771. **Validação**: Confirmar que datasets correspondem aos esquemas desejados782. **Padronização**: Corrigir typos, mapear sinônimos para termos canônicos793. **Anotação**: Vincular datasets a entidades de metadados para consultabilidade8081**Tipos de esquema:**82- **Esquemas flexíveis**: Validar apenas colunas conhecidas, permitir metadados adicionais83- **Esquemas minimamente necessários**: Especificar colunas essenciais, permitir extras84- **Esquemas rígidos**: Controle completo sobre estrutura e valores8586**Tipos de dados suportados:**87- DataFrames (Parquet, CSV)88- AnnData (genômica de célula única)89- MuData (multimodal)90- SpatialData (transcriptômica espacial)91- TileDB-SOMA (arrays escaláveis)9293**Workflows principais:**94- Definir features e esquemas para validação de dados95- Usar `DataFrameCurator` ou `AnnDataCurator` para validação96- Padronizar valores com `.cat.standardize()`97- Mapear para ontologias com `.cat.add_ontology()`98- Salvar artifacts curados com vinculação de esquema99- Consultar datasets validados por features100101**Referência:** `references/annotation-validation.md` - Leia para workflows de curação detalhados, padrões de design de esquema, tratamento de erros de validação e melhores práticas.102103### 4. Ontologias Biológicas104105**Ontologias disponíveis (via Bionty):**106- Genes (Ensembl), Proteínas (UniProt)107- Tipos de célula (CL), Linhagens celulares (CLO)108- Tecidos (Uberon), Doenças (Mondo, DOID)109- Fenótipos (HPO), Pathways (GO)110- Fatores experimentais (EFO), Estágios de desenvolvimento111- Organismos (NCBItaxon), Drogas (DrugBank)112113**Workflows principais:**114- Importar ontologias públicas com `bt.CellType.import_source()`115- Pesquisar ontologias com correspondência de palavra-chave ou exata116- Padronizar termos usando mapeamento de sinônimos117- Explorar relacionamentos hierárquicos (pais, filhos, ancestrais)118- Validar dados contra termos de ontologia119- Anotar datasets com registros de ontologia120- Criar termos e hierarquias customizadas121- Tratar contextos multiorganismo (humano, camundongo, etc.)122123**Referência:** `references/ontologies.md` - Leia para operações abrangentes de ontologia, estratégias de padronização, navegação de hierarquia e workflows de anotação.124125### 5. Integrações126127**Orquestradores de workflow:**128- Nextflow: Rastrear processos e outputs de pipeline129- Snakemake: Integrar em regras de Snakemake130- Redun: Combinar com rastreamento de tarefas de Redun131132**Plataformas MLOps:**133- Weights & Biases: Vincular experimentos com artifacts de dados134- MLflow: Rastrear modelos e experimentos135- HuggingFace: Rastrear fine-tuning de modelos136- scVI-tools: Workflows de análise de célula única137138**Sistemas de armazenamento:**139- Sistema de arquivos local, AWS S3, Google Cloud Storage140- Compatível com S3 (MinIO, Cloudflare R2)141- Endpoints HTTP/HTTPS (somente leitura)142- Datasets HuggingFace143144**Array stores:**145- TileDB-SOMA (com suporte cellxgene)146- DuckDB para consultas SQL em arquivos Parquet147148**Visualização:**149- Vitessce para visualização interativa espacial/célula única150151**Controle de versão:**152- Integração Git para rastreamento de código-fonte153154**Referência:** `references/integrations.md` - Leia para padrões de integração, exemplos de código e troubleshooting para sistemas de terceiros.155156### 6. Configuração e Deployment157158**Instalação:**159- Básico: `uv pip install lamindb`160- Com extras: `uv pip install 'lamindb[gcp,zarr,fcs]'`161- Módulos: bionty, wetlab, clinical162163**Tipos de instância:**164- SQLite local (desenvolvimento)165- Cloud storage + SQLite (pequenas equipes)166- Cloud storage + PostgreSQL (produção)167168**Opções de armazenamento:**169- Sistema de arquivos local170- AWS S3 com regiões e permissões configuráveis171- Google Cloud Storage172- Endpoints compatíveis com S3 (MinIO, Cloudflare R2)173174**Configuração:**175- Gerenciamento de cache para arquivos em nuvem176- Configurações de sistema multiusuário177- Sincronização de repositório Git178- Variáveis de ambiente179180**Padrões de deployment:**181- Migração dev local → produção em nuvem182- Deployments multi-região183- Armazenamento compartilhado com instâncias pessoais184185**Referência:** `references/setup-deployment.md` - Leia para instalação detalhada, configuração, setup de armazenamento, gerenciamento de banco de dados, melhores práticas de segurança e troubleshooting.186187## Workflows de Casos de Uso Comuns188189### Caso de Uso 1: Análise de RNA-seq de Célula Única com Validação de Ontologia190191```python192import lamindb as ln193import bionty as bt194import anndata as ad195196# Iniciar rastreamento197ln.track(params={"analysis": "scRNA-seq QC and annotation"})198199# Importar ontologia de tipo de célula200bt.CellType.import_source()201202# Carregar dados203adata = ad.read_h5ad("raw_counts.h5ad")204205# Validar e padronizar tipos de célula206adata.obs["cell_type"] = bt.CellType.standardize(adata.obs["cell_type"])207208# Curar com esquema209curator = ln.curators.AnnDataCurator(adata, schema)210curator.validate()211artifact = curator.save_artifact(key="scrna/validated.h5ad")212213# Vincular anotações de ontologia214cell_types = bt.CellType.from_values(adata.obs.cell_type)215artifact.feature_sets.add_ontology(cell_types)216217ln.finish()218```219220### Caso de Uso 2: Construindo um Data Lakehouse Consultável221222```python223import lamindb as ln224225# Registrar múltiplos experimentos226for i, file in enumerate(data_files):227 artifact = ln.Artifact.from_anndata(228 ad.read_h5ad(file),229 key=f"scrna/batch_{i}.h5ad",230 description=f"scRNA-seq batch {i}"231 ).save()232233 # Anotar com features234 artifact.features.add_values({235 "batch": i,236 "tissue": tissues[i],237 "condition": conditions[i]238 })239240# Consultar em todos os experimentos241immune_datasets = ln.Artifact.filter(242 key__startswith="scrna/",243 tissue="PBMC",244 condition="treated"245).to_dataframe()246247# Carregar datasets específicos248for artifact in immune_datasets:249 adata = artifact.load()250 # Analisar251```252253### Caso de Uso 3: Pipeline ML com Integração W&B254255```python256import lamindb as ln257import wandb258259# Inicializar ambos os sistemas260wandb.init(project="drug-response", name="exp-42")261ln.track(params={"model": "random_forest", "n_estimators": 100})262263# Carregar dados de treinamento do LaminDB264train_artifact = ln.Artifact.get(key="datasets/train.parquet")265train_data = train_artifact.load()266267# Treinar modelo268model = train_model(train_data)269270# Fazer log em W&B271wandb.log({"accuracy": 0.95})272273# Salvar modelo no LaminDB com vinculação a W&B274import joblib275joblib.dump(model, "model.pkl")276model_artifact = ln.Artifact("model.pkl", key="models/exp-42.pkl").save()277model_artifact.features.add_values({"wandb_run_id": wandb.run.id})278279ln.finish()280wandb.finish()281```282283### Caso de Uso 4: Integração com Pipeline Nextflow284285```python286# Em script de processo Nextflow287import lamindb as ln288289ln.track()290291# Carregar artifact de entrada292input_artifact = ln.Artifact.get(key="raw/batch_${batch_id}.fastq.gz")293input_path = input_artifact.cache()294295# Processar (alinhamento, quantificação, etc.)296# ... lógica de processo Nextflow ...297298# Salvar output299output_artifact = ln.Artifact(300 "counts.csv",301 key="processed/batch_${batch_id}_counts.csv"302).save()303304ln.finish()305```306307## Checklist de Começando308309Para começar a usar LaminDB efetivamente:3103111. **Instalação & Configuração** (`references/setup-deployment.md`)312 - Instalar LaminDB e extras necessários313 - Autenticar com `lamin login`314 - Inicializar instância com `lamin init --storage ...`3153162. **Aprender Conceitos Centrais** (`references/core-concepts.md`)317 - Entender Artifacts, Records, Runs, Transforms318 - Praticar criação e recuperação de artifacts319 - Implementar `ln.track()` e `ln.finish()` em workflows3203213. **Dominar Consultas** (`references/data-management.md`)322 - Praticar filtragem e pesquisa de registries323 - Aprender consultas baseadas em features324 - Experimentar streaming de arquivos grandes3253264. **Configurar Validação** (`references/annotation-validation.md`)327 - Definir features relevantes ao domínio de pesquisa328 - Criar esquemas para tipos de dados329 - Praticar workflows de curação3303315. **Integrar Ontologias** (`references/ontologies.md`)332 - Importar ontologias biológicas relevantes (genes, tipos de célula, etc.)333 - Validar anotações existentes334 - Padronizar metadados com termos de ontologia3353366. **Conectar Ferramentas** (`references/integrations.md`)337 - Integrar com orquestradores de workflow existentes338 - Vincular plataformas ML para rastreamento de experimentos339 - Configurar armazenamento em nuvem e compute340341## Princípios Principais342343Siga esses princípios ao trabalhar com LaminDB:3443451. **Rastreie tudo**: Use `ln.track()` no início de toda análise para captura automática de linhagem3463472. **Valide cedo**: Defina esquemas e valide dados antes de análise extensa3483493. **Use ontologias**: Aproveite ontologias biológicas públicas para anotações padronizadas3503514. **Organize com chaves**: Estruture chaves de artifact hierarquicamente (ex: `project/experiment/batch/file.h5ad`)3523535. **Consulte metadados primeiro**: Filtre e pesquise antes de carregar arquivos grandes3543556. **Versione, não duplique**: Use versionamento integrado em vez de criar novas chaves para modificações3563577. **Anote com features**: Defina features tipadas para metadados consultáveis3583598. **Documente completamente**: Adicione descrições a artifacts, esquemas e transforms3603619. **Aproveite a linhagem**: Use `view_lineage()` para entender proveniência de dados36236310. **Comece localmente, escale para nuvem**: Desenvolva localmente com SQLite, faça deploy em nuvem com PostgreSQL364365## Arquivos de Referência366367Esta habilidade inclui documentação de referência abrangente organizada por capacidade:368369- **`references/core-concepts.md`** - Artifacts, records, runs, transforms, features, versionamento, linhagem370- **`references/data-management.md`** - Consultas, filtragem, pesquisa, streaming, organização de dados371- **`references/annotation-validation.md`** - Design de esquema, workflows de curação, estratégias de validação372- **`references/ontologies.md`** - Gerenciamento de ontologia biológica, padronização, hierarquias373- **`references/integrations.md`** - Orquestradores de workflow, plataformas MLOps, sistemas de armazenamento, ferramentas374- **`references/setup-deployment.md`** - Instalação, configuração, deployment, troubleshooting375376Leia o(s) arquivo(s) de referência relevante(s) baseado na capacidade específica de LaminDB necessária para a tarefa em mãos.377378## Recursos Adicionais379380- **Documentação Oficial**: https://docs.lamin.ai381- **Referência de API**: https://docs.lamin.ai/api382- **Repositório GitHub**: https://github.com/laminlabs/lamindb383- **Tutorial**: https://docs.lamin.ai/tutorial384- **FAQ**: https://docs.lamin.ai/faq