orionbelt-semantic-layer은(는) 무엇을 하나요?
AI 에이전트를 위한 API 우선 시맨틱 엔진 및 쿼리 플래너. 선언적 YAML 모델을 BigQuery, PostgreSQL, Snowflake, ClickHouse, Dremio, Databricks, DuckDB, MySQL에 최적화된 방언별 SQL로 컴파일합니다.
설치
npm install -g @orionbelt/cli
# 또는
pip install orionbelt
YAML 모델 정의
모델은 메트릭, 차원 및 관계를 정의합니다:
# modelos/ventas.yaml
modelo: ventas
métricas:
- nombre: ingresos_totales
sql: "SUM(monto)"
tipo: suma
- nombre: recuento_pedidos
sql: "COUNT(id_pedido)"
tipo: conteo
dimensiones:
- nombre: fecha_pedido
sql: "fecha"
tipo: tiempo
- nombre: región
sql: "región"
tipo: categórico
relaciones:
- modelo: clientes
tipo: izquierda
sql_condición: "${ventas}.id_cliente = ${clientes}.id_cliente"
API 사용법
메트릭 나열 및 쿼리
orionbelt consulta --modelo ventas --métricas ingresos_totales,recuento_pedidos --por fecha_pedido
필터 추가
orionbelt consulta --modelo ventas --métricas ingresos_totales --filtros "región:APAC"
방언별 SQL 출력
orionbelt consulta --modelo ventas --métricas ingresos_totales --dialecto bigquery
orionbelt consulta --modelo ventas --métricas ingresos_totales --dialecto postgresql
지원 데이터베이스
| 데이터베이스 | 접두사 방언 | 비고 |
|---|---|---|
| BigQuery | bigquery | 파티션 클러스터 지원 |
| PostgreSQL | postgresql | |
| Snowflake | snowflake | 웨어하우스 컨텍스트 지원 |
| ClickHouse | clickhouse | 공격적 최적화 |
| Dremio | dremio | |
| Databricks | databricks | 델타 레이크 지원 |
| DuckDB | duckdb | 임베디드 분석에 최적화 |
| MySQL | mysql |
예시: BigQuery용 YAML 모델 컴파일
orionbelt compilar --directorios modelos/ --dialecto bigquery --destino salida/
이 스킬은 최소한의 컨텍스트 스위칭으로 AI 에이전트가 여러 SQL 백엔드에서 의미적으로 일관된 쿼리를 생성할 수 있도록 해줍니다.