pyomop package

Subpackages

Submodules

pyomop.engine_factory module

class pyomop.engine_factory.CdmEngineFactory(db='sqlite', host='localhost', port=5432, user='root', pw='pass', name='cdm.sqlite', schema='public')[source]

Bases: object

property async_session
property base
property db
property engine
property host
async init_models(metadata)[source]
property name
property port
property pw
property schema
property session
property user

pyomop.llm_engine module

SQL wrapper around SQLDatabase in langchain.

class pyomop.llm_engine.CDMDatabase(engine: Engine, schema: str | None = None, ignore_tables: List[str] | None = None, include_tables: List[str] | None = None, sample_rows_in_table_info: int = 3, indexes_in_table_info: bool = False, custom_table_info: dict | None = None, view_support: bool = False, max_string_length: int = 300, version: str = 'cdm54')[source]

Bases: SQLDatabase

get_single_table_info(table_name: str) str[source]

Get table info for a single table.

get_table_columns(table_name: str) List[Any][source]

Get table columns.

pyomop.llm_query module

class pyomop.llm_query.CdmLLMQuery(sql_database: CDMDatabase, llm: Any = None, similarity_top_k: int = 1, embed_model: str = 'BAAI/bge-small-en-v1.5', **kwargs: Any)[source]

Bases: object

property object_index: ObjectIndex
property query_engine: SQLTableRetrieverQueryEngine
property table_node_mapping: SQLTableNodeMapping
property table_schema_objs: list[SQLTableSchema]

pyomop.main module

pyomop.main.main_routine()[source]

pyomop.sqldict module

pyomop.vector module

class pyomop.vector.CdmVector[source]

Bases: object

async execute(cdm, sqldict=None, query=None, chunksize=1000)[source]
async query_library(cdm, resource='person', query_name='PE02')[source]
result_to_df(result)[source]

pyomop.vocabulary module

class pyomop.vocabulary.CdmVocabulary(cdm, version='cdm54')[source]

Bases: object

property concept_code
property concept_id
property concept_name
create_vocab(folder, sample=None)[source]
property domain_id
async get_concept(concept_id)[source]
async get_concept_by_code(concept_code, vocabulary_id)[source]
get_session() AsyncGenerator[AsyncSession, None][source]
set_concept(concept_code, vocabulary_id=None)[source]
property vocabulary_id
async write_vocab(df, table, if_exists='replace', chunk_size=1000)[source]

Module contents