# genie-app

The `genie-app` tool is a robust test application that allows for general usage of the Genie library.
This tool exposes API-level commands and related utilities to enable a wide range of various configurations that more
closely emulates developers’ Genie SDK use cases.

DESCRIPTION:
    ------------
    Tool for text to text inference of LLMs using Genie.

    REQUIRED ARGUMENTS:
    -------------------
    -s or --script                        <FILE>      Script file that contains chronological sequence of script commands
    
    OPTIONAL ARGUMENTS:
    -------------------
    -h or --help                                      Show this help message and exit. Help message contains all currently supported script commands
    
    SCRIPT COMMANDS:
    ----------------
    
    dialog config create       CONFIG_NAME FILE.json
    dialog config bind profile CONFIG_NAME PROFILE_NAME
    dialog config bind log     CONFIG_NAME LOG_NAME
    dialog config free         CONFIG_NAME
    dialog create              DIALOG_NAME CONFIG_NAME
    dialog query               DIALOG_NAME ["PROMPT_STR"/PROMPT_FILE] [OUTPUT_FILE]
    dialog rewindQuery         DIALOG_NAME ["PROMPT_STR"/PROMPT_FILE] [OUTPUT_FILE]
    dialog embeddingQuery      DIALOG_NAME EMBEDDINGS_PATH EMBEDDINGS_TABLE_PATH [OUTPUT_FILE]
    dialog embeddingTokenQuery DIALOG_NAME EMBEDDINGS_PATH EMBEDDINGS_TABLE_PATH [OUTPUT_FILE]
    dialog tokenQuery          DIALOG_NAME TOKENS_PATH [OUTPUT_FILE]
    dialog batchQuery          DIALOG_NAME ["PROMPT_STR"/PROMPT_FILE] ["PROMPT_STR"/PROMPT_FILE]... [OUTPUT_DIR]
    dialog applyLora           DIALOG_NAME ENGINE_NAME ADAPTER_NAME
    dialog setLoraStrength     DIALOG_NAME ENGINE_NAME TENSOR_NAME_1 ALPHA_1 ...
    dialog reset               DIALOG_NAME
    dialog save                DIALOG_NAME PATH
    dialog restore             DIALOG_NAME PATH
    dialog setPerformance      DIALOG_NAME PERFORMANCE_MODE
    dialog free                DIALOG_NAME
    dialog getValue            DIALOG_NAME GENIE_DIALOG_PARAM
    dialog getTokenizer        DIALOG_NAME TOKENIZER_NAME
    dialog getSampler          DIALOG_NAME SAMPLER_NAME
    dialog setMaxNumTokens     DIALOG_NAME MAX_NUM_TOKENS
    dialog setStopSequence     DIALOG_NAME ["STOP_SEQUENCE_JSON_STR"/STOP_SEQUENCE_JSON_FILE]
    dialog setOemKey           DIALOG_NAME OEM_KEY
    dialog setPriority         DIALOG_NAME ENGINE_ROLE PRIORITY
    
    embedding config create       CONFIG_NAME FILE.json
    embedding config bind profile CONFIG_NAME PROFILE_NAME
    embedding config bind log     CONFIG_NAME LOG_NAME
    embedding config free         CONFIG_NAME
    embedding create              EMBEDDING_NAME CONFIG_NAME
    embedding generate            EMBEDDING_NAME ["PROMPT_STR"/PROMPT_FILE] [OUTPUT_FILE]
    embedding setPerformance      EMBEDDING_NAME PERFORMANCE_MODE
    embedding free                EMBEDDING_NAME
    
    log create LOG_NAME LEVEL [OUTPUT_FILE.txt]
    log free   LOG_NAME
    
    node config create         CONFIG_NAME FILE.json
    node config free           CONFIG_NAME
    node config bind profile   CONFIG_NAME PROFILE_NAME
    node config bind log       CONFIG_NAME LOG_NAME
    node create                NODE_NAME CONFIG_NAME
    node set text              NODE_NAME NODE_IO TEXT_PROMPT
    node set textFile          NODE_NAME NODE_IO TEXT_PROMPT_FILE_PATH
    node set image             NODE_NAME NODE_IO IMAGE_PATH
    node set embedding         NODE_NAME NODE_IO EMBEDDING_PATH
    node set textCallback      NODE_NAME NODE_IO
    node set embeddingCallback NODE_NAME
    node getSampler            NODE_NAME SAMPLER_NAME
    node applyLora             NODE_NAME ENGINE_NAME ADAPTER_NAME
    node setLoraStrength       NODE_NAME ENGINE_NAME TENSOR_NAME_1 ALPHA_1 ...
    node free                  NODE_NAME
    
    pipeline config create       CONFIG_NAME FILE.json
    pipeline config bind profile CONFIG_NAME PROFILE_NAME
    pipeline config bind log     CONFIG_NAME LOG_NAME
    pipeline config free         CONFIG_NAME
    pipeline create              PIPELINE_NAME CONFIG_NAME
    pipeline add                 PIPELINE_NAME NODE_NAME
    pipeline connect             PIPELINE_NAME PRODUCER_NODE_NAME PRODUCER_NODE_IO CONSUMER_NODE_NAME CONSUMER_NODE_IO
    pipeline execute             PIPELINE_NAME [OUTPUT_FILE]
    pipeline reset               PIPELINE_NAME
    pipeline save                PIPELINE_NAME PATH
    pipeline restore             PIPELINE_NAME PATH
    pipeline free                PIPELINE_NAME
    pipeline setOemKey           PIPELINE_NAME OEM_KEY
    pipeline setPriority         PIPELINE_NAME ENGINE_ROLE PRIORITY
    
    profile config create CONFIG_NAME FILE.json
    profile config free   CONFIG_NAME
    profile create        PROFILE_NAME [CONFIG_NAME]
    profile save          PROFILE_NAME [OUTPUT_FILE.json]
    profile free          PROFILE_NAME
    
    tokenizer encode         TOKENIZER_NAME INPUT_STRING [OUTPUT_FILE]
    tokenizer encodeFromFile TOKENIZER_NAME INPUT_FILE [OUTPUT_FILE]
    tokenizer decode         TOKENIZER_NAME TOKEN_SIZE TOKEN_ID_1 ... [OUTPUT_FILE]
    tokenizer decodeFromFile TOKENIZER_NAME TOKENS_FILE [OUTPUT_FILE]
    
    accuracy config create CONFIG_NAME FILE.json
    accuracy config free   CONFIG_NAME
    accuracy create        ACCURACY_NAME CONFIG_NAME [dialog/node] DIALOG_NAME
    accuracy compute       ACCURACY_NAME OUTPUT_FILE.json
    accuracy free          ACCURACY_NAME
    
    sampler config create   CONFIG_NAME FILE.json
    sampler config setParam CONFIG_NAME KEY VALUE
    sampler config free     CONFIG_NAME
    sampler create          SAMPLER_NAME CONFIG_NAME
    sampler applyConfig     SAMPLER_NAME CONFIG_NAME
    sampler sampleData      SAMPLER_NAME DATA.raw DATA_CONFIG.json [OUTPUT_FILE]
    sampler free            SAMPLER_NAME
    
    history
    history clear
    history save FILE
    
    version
    help
    script FILE
    loop [NUMBER OF ITERATIONS]
    endloop
    sleep [DURATION in ms]
    ls
    exit
    Copy to clipboard

See [Tutorials](https://docs.qualcomm.com/doc/80-63442-10/topic/tutorials_tutorials.html#genie-tutorials) for a reference example on how to use the `genie-app` tool.

## Script Statement to C API Mapping

In genie-app scripts, names are used to represent Genie C API handles. Generally, DIALOG\_NAME translates to a
GenieDialog\_Handle\_t, PIPELINE\_NAME to a GeniePipeline\_Handle\_t, and so on. If there is a CONFIG\_NAME argument, it would
correspond to a configuration handle to the respective API component. For example, the “dialog create” CONFIG\_NAME would
refer to a GenieDialogConfig\_Handle\_t.

The following genie-app script statements do not have a corresponding Genie C API function:

- help
- ls
- history
- script
- loop/endloop
- sleep
- exit

The following Genie C APIs are not yet supported in genie-app:

- GenieDialog\_signal
- GenieDialog\_setPriority
- GenieDialog\_setOemKey
- GenieDialog\_bindEngine
- GenieDialog\_getEngine
- GenieDialog\_getPerformancePolicy
- GenieEmbedding\_getPerformancePolicy
- GenieNode\_bindEngine
- GenieNode\_getEngine
- GenieNode\_getTokenizer
- GeniePipeline\_setPriority
- GeniePipeline\_setOemKey
- GenieSampler\_registerCallback
- GenieSampler\_registerUserDataCallback
- GenieEngineConfig\_createFromJson
- GenieEngineConfig\_bindProfiler
- GenieEngineConfig\_bindLogger
- GenieEngineConfig\_free
- GenieEngine\_create
- GenieEngine\_free

| Statement | Genie C API |
| --- | --- |
| dialog config create | [GenieDialogConfig\_createFromJson](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieDialog_8h_1a3c66d3491d44d1f93c98eb7af294b140.html#exhale-function-geniedialog-8h-1a3c66d3491d44d1f93c98eb7af294b140) |
| dialog config bind profile | [GenieDialogConfig\_bindProfiler](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieDialog_8h_1acd04d699356e5bc83dd2acc6e0ea18f0.html#exhale-function-geniedialog-8h-1acd04d699356e5bc83dd2acc6e0ea18f0) |
| dialog config bind log | [GenieDialogConfig\_bindLogger](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieDialog_8h_1a5e98a421e7f997eba72fdd5610398587.html#exhale-function-geniedialog-8h-1a5e98a421e7f997eba72fdd5610398587) |
| dialog config free | [GenieDialogConfig\_free](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieDialog_8h_1a12f0f8a9498298b77c1d251372e8d525.html#exhale-function-geniedialog-8h-1a12f0f8a9498298b77c1d251372e8d525) |
| dialog create | [GenieDialog\_create](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieDialog_8h_1a7ed8b75b55a1d483cf9d5e5bf9027d24.html#exhale-function-geniedialog-8h-1a7ed8b75b55a1d483cf9d5e5bf9027d24) |
| dialog query | [GenieDialog\_query](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieDialog_8h_1a7b2d4bf78e184fe81e81d089719f3733.html#exhale-function-geniedialog-8h-1a7b2d4bf78e184fe81e81d089719f3733) |
| dialog rewindQuery | [GenieDialog\_query](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieDialog_8h_1a7b2d4bf78e184fe81e81d089719f3733.html#exhale-function-geniedialog-8h-1a7b2d4bf78e184fe81e81d089719f3733) |
| dialog embeddingQuery | [GenieDialog\_embeddingQuery](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieDialog_8h_1af3958d9748026304886d367e1726dd79.html#exhale-function-geniedialog-8h-1af3958d9748026304886d367e1726dd79) |
| dialog embeddingTokenQuery | [GenieDialog\_embeddingTokenQuery](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieDialog_8h_1a058c388ffeea103835a44f7a78075522.html#exhale-function-geniedialog-8h-1a058c388ffeea103835a44f7a78075522) |
| dialog tokenQuery | [GenieDialog\_tokenQuery](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieDialog_8h_1a1a6b960cdbf972832662d87190657326.html#exhale-function-geniedialog-8h-1a1a6b960cdbf972832662d87190657326) |
| dialog applyLora | [GenieDialog\_applyLora](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieDialog_8h_1acc98f3fcd54d970ac84b17c4da3a25c6.html#exhale-function-geniedialog-8h-1acc98f3fcd54d970ac84b17c4da3a25c6) |
| dialog setLoraStrength | [GenieDialog\_setLoraStrength](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieDialog_8h_1ad2604075973d7f9911df4387c7a37148.html#exhale-function-geniedialog-8h-1ad2604075973d7f9911df4387c7a37148) |
| dialog reset | [GenieDialog\_reset](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieDialog_8h_1a4547984d74b50386a3d1f90d7389933c.html#exhale-function-geniedialog-8h-1a4547984d74b50386a3d1f90d7389933c) |
| dialog save | [GenieDialog\_save](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieDialog_8h_1af80e3d66851c0ab1ebab0771455a8590.html#exhale-function-geniedialog-8h-1af80e3d66851c0ab1ebab0771455a8590) |
| dialog restore | [GenieDialog\_restore](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieDialog_8h_1a2bb4dbeddd258e63162b8e5a219b3e3c.html#exhale-function-geniedialog-8h-1a2bb4dbeddd258e63162b8e5a219b3e3c) |
| dialog setPerformance | [GenieDialog\_setPerformancePolicy](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieDialog_8h_1a788b23dde09d0526dce5d6d32040d119.html#exhale-function-geniedialog-8h-1a788b23dde09d0526dce5d6d32040d119) |
| dialog free | [GenieDialog\_free](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieDialog_8h_1a1493e65680af274eea84347f88d90899.html#exhale-function-geniedialog-8h-1a1493e65680af274eea84347f88d90899) |
| dialog getTokenizer | [GenieDialog\_getTokenizer](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieDialog_8h_1a2c779262cd3539c815ed66a48335c53a.html#exhale-function-geniedialog-8h-1a2c779262cd3539c815ed66a48335c53a) |
| dialog getSampler | [GenieDialog\_getSampler](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieDialog_8h_1a0e4b39749e037211d0c00bf5b1f71afe.html#exhale-function-geniedialog-8h-1a0e4b39749e037211d0c00bf5b1f71afe) |
| dialog getValue | [GenieDialog\_getValue](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieDialog_8h_1ae9fd3d2263e0b8f616b35ca8811eabc9.html#exhale-function-geniedialog-8h-1ae9fd3d2263e0b8f616b35ca8811eabc9) |
| dialog setMaxNumTokens | [GenieDialog\_setMaxNumTokens](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieDialog_8h_1aa4f3c843de2abdc513e73f2db3c8df36.html#exhale-function-geniedialog-8h-1aa4f3c843de2abdc513e73f2db3c8df36) |
| dialog setStopSequence | [GenieDialog\_setStopSequence](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieDialog_8h_1aa03534e4394558e02fd2ab65d59767d3.html#exhale-function-geniedialog-8h-1aa03534e4394558e02fd2ab65d59767d3) |
| embedding config create | [GenieEmbeddingConfig\_createFromJson](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieEmbedding_8h_1a3d4da392995015a54825196b20318a26.html#exhale-function-genieembedding-8h-1a3d4da392995015a54825196b20318a26) |
| embedding config bind profile | [GenieEmbeddingConfig\_bindProfiler](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieEmbedding_8h_1a9f2cb87a9c6e80039b9dafaf147c8bc3.html#exhale-function-genieembedding-8h-1a9f2cb87a9c6e80039b9dafaf147c8bc3) |
| embedding config bind log | [GenieEmbeddingConfig\_bindLogger](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieEmbedding_8h_1aa4485392f121c4d91a75b36e723d4cb8.html#exhale-function-genieembedding-8h-1aa4485392f121c4d91a75b36e723d4cb8) |
| embedding config free | [GenieEmbeddingConfig\_free](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieEmbedding_8h_1ae5a91c61cd91d23c0b26825cad3afc06.html#exhale-function-genieembedding-8h-1ae5a91c61cd91d23c0b26825cad3afc06) |
| embedding create | [GenieEmbedding\_create](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieEmbedding_8h_1a48f60dcc012c75d19c950824a00ba40c.html#exhale-function-genieembedding-8h-1a48f60dcc012c75d19c950824a00ba40c) |
| embedding generate | [GenieEmbedding\_generate](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieEmbedding_8h_1a1bdaa2c863abca12b8b6f445f56dd985.html#exhale-function-genieembedding-8h-1a1bdaa2c863abca12b8b6f445f56dd985) |
| embedding setPerformance | [GenieEmbedding\_setPerformancePolicy](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieEmbedding_8h_1ad436b0efa397319fe0757623bb183377.html#exhale-function-genieembedding-8h-1ad436b0efa397319fe0757623bb183377) |
| embedding free | [GenieEmbedding\_free](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieEmbedding_8h_1a8d37516400c2b5b0f00d859170c748a7.html#exhale-function-genieembedding-8h-1a8d37516400c2b5b0f00d859170c748a7) |
| log create | [GenieLog\_create](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieLog_8h_1afcf4417c1026fd4657092cbac9d1cd01.html#exhale-function-genielog-8h-1afcf4417c1026fd4657092cbac9d1cd01) |
| log free | [GenieLog\_free](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieLog_8h_1a6539606b0ded59dccde5204d1c85d325.html#exhale-function-genielog-8h-1a6539606b0ded59dccde5204d1c85d325) |
| node config create | [GenieNodeConfig\_createFromJson](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieNode_8h_1a16fbd1acc54ebfaf18dbef41bc56483c.html#exhale-function-genienode-8h-1a16fbd1acc54ebfaf18dbef41bc56483c) |
| node config bind profile | [GenieNodeConfig\_bindProfiler](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieNode_8h_1a2cc127e8199cecc6c1e4d6bba2df4895.html#exhale-function-genienode-8h-1a2cc127e8199cecc6c1e4d6bba2df4895) |
| node config bind log | [GenieNodeConfig\_bindLogger](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieNode_8h_1ad744d5c3dbb87c33edf452bc5b8672f8.html#exhale-function-genienode-8h-1ad744d5c3dbb87c33edf452bc5b8672f8) |
| node config free | [GenieNodeConfig\_free](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieNode_8h_1a2c64ec143da2dbbd2241854833e86c41.html#exhale-function-genienode-8h-1a2c64ec143da2dbbd2241854833e86c41) |
| node create | [GenieNode\_create](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieNode_8h_1a67b4122c281f82cc01a814d5dc075c14.html#exhale-function-genienode-8h-1a67b4122c281f82cc01a814d5dc075c14) |
| node set text | [GenieNode\_setData](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieNode_8h_1a7a0a965290ea5a8208b67d9e5c35a3d4.html#exhale-function-genienode-8h-1a7a0a965290ea5a8208b67d9e5c35a3d4) |
| node set textFile | [GenieNode\_setData](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieNode_8h_1a7a0a965290ea5a8208b67d9e5c35a3d4.html#exhale-function-genienode-8h-1a7a0a965290ea5a8208b67d9e5c35a3d4) |
| node set image | [GenieNode\_setData](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieNode_8h_1a7a0a965290ea5a8208b67d9e5c35a3d4.html#exhale-function-genienode-8h-1a7a0a965290ea5a8208b67d9e5c35a3d4) |
| node set embedding | [GenieNode\_setData](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieNode_8h_1a7a0a965290ea5a8208b67d9e5c35a3d4.html#exhale-function-genienode-8h-1a7a0a965290ea5a8208b67d9e5c35a3d4) |
| node set textCallback | [GenieNode\_setTextCallback](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieNode_8h_1af8f0d565296cbad72a4f896f6e2c16f8.html#exhale-function-genienode-8h-1af8f0d565296cbad72a4f896f6e2c16f8) |
| node set embeddingCallback | [GenieNode\_setEmbeddingCallback](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieNode_8h_1a134378aa01d6c5fdfc30632841f531af.html#exhale-function-genienode-8h-1a134378aa01d6c5fdfc30632841f531af) |
| node getSampler | [GenieNode\_getSampler](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieNode_8h_1a4964027b18520f0981b54442ab72cc39.html#exhale-function-genienode-8h-1a4964027b18520f0981b54442ab72cc39) |
| node applyLora | [GenieNode\_applyLora](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieNode_8h_1a7816a2b9da5d947efd895e958a815924.html#exhale-function-genienode-8h-1a7816a2b9da5d947efd895e958a815924) |
| node setLoraStrength | [GenieNode\_setLoraStrength](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieNode_8h_1a56de1f9fc21d9c0f0beea26cce541628.html#exhale-function-genienode-8h-1a56de1f9fc21d9c0f0beea26cce541628) |
| node free | [GenieNode\_free](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieNode_8h_1a2d497783a5360b22dcf3dee7f978b06d.html#exhale-function-genienode-8h-1a2d497783a5360b22dcf3dee7f978b06d) |
| pipeline config create | [GeniePipelineConfig\_createFromJson](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GeniePipeline_8h_1a04f86679b871ab65e1250168af937019.html#exhale-function-geniepipeline-8h-1a04f86679b871ab65e1250168af937019) |
| pipeline config bind profile | [GeniePipelineConfig\_bindProfiler](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GeniePipeline_8h_1a5b7a49cd794f84c4a4826f36f8cfa9f2.html#exhale-function-geniepipeline-8h-1a5b7a49cd794f84c4a4826f36f8cfa9f2) |
| pipeline config bind log | [GeniePipelineConfig\_bindLogger](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GeniePipeline_8h_1a9f002fdaf20b3749a3811e9381d376ee.html#exhale-function-geniepipeline-8h-1a9f002fdaf20b3749a3811e9381d376ee) |
| pipeline config free | [GeniePipelineConfig\_free](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GeniePipeline_8h_1a3ced9bca8da96551f1c539f95aa1efb2.html#exhale-function-geniepipeline-8h-1a3ced9bca8da96551f1c539f95aa1efb2) |
| pipeline create | [GeniePipeline\_create](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GeniePipeline_8h_1a554b5fa1d6fb5b909203948bd23c925c.html#exhale-function-geniepipeline-8h-1a554b5fa1d6fb5b909203948bd23c925c) |
| pipeline add | [GeniePipeline\_addNode](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GeniePipeline_8h_1af386f926e4b13c5989fab6fc299fc851.html#exhale-function-geniepipeline-8h-1af386f926e4b13c5989fab6fc299fc851) |
| pipeline connect | [GeniePipeline\_connect](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GeniePipeline_8h_1a0fbe83759a3b8a89f19a6be86c1162ff.html#exhale-function-geniepipeline-8h-1a0fbe83759a3b8a89f19a6be86c1162ff) |
| pipeline execute | [GeniePipeline\_execute](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GeniePipeline_8h_1aee7b965e566b9821c521f15b4b360f91.html#exhale-function-geniepipeline-8h-1aee7b965e566b9821c521f15b4b360f91) |
| pipeline reset | [GeniePipeline\_reset](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GeniePipeline_8h_1a6f7cdbafba8125265975db618a01b797.html#exhale-function-geniepipeline-8h-1a6f7cdbafba8125265975db618a01b797) |
| pipeline save | [GeniePipeline\_save](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GeniePipeline_8h_1ad2d26087c33b4087324c3d24423b3fbf.html#exhale-function-geniepipeline-8h-1ad2d26087c33b4087324c3d24423b3fbf) |
| pipeline restore | [GeniePipeline\_restore](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GeniePipeline_8h_1ac988a3584d2ca06617fd15005bf9d9b5.html#exhale-function-geniepipeline-8h-1ac988a3584d2ca06617fd15005bf9d9b5) |
| pipeline free | [GeniePipeline\_free](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GeniePipeline_8h_1abe14ba3191aafd7a22bb16dc49bc04b7.html#exhale-function-geniepipeline-8h-1abe14ba3191aafd7a22bb16dc49bc04b7) |
| profile config create | [GenieProfileConfig\_createFromJson](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieProfile_8h_1a70e275bd2c70b9f0f0567f079c4f2056.html#exhale-function-genieprofile-8h-1a70e275bd2c70b9f0f0567f079c4f2056) |
| profile config free | [GenieProfileConfig\_free](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieProfile_8h_1a271345aca2161efa7db492213b22bde5.html#exhale-function-genieprofile-8h-1a271345aca2161efa7db492213b22bde5) |
| profile create | [GenieProfile\_create](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieProfile_8h_1aaf95ae962651f7fd045335886ed38a66.html#exhale-function-genieprofile-8h-1aaf95ae962651f7fd045335886ed38a66) |
| profile save | [GenieProfile\_getJsonData](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieProfile_8h_1af16af81be1483300a7a121cfaebaab09.html#exhale-function-genieprofile-8h-1af16af81be1483300a7a121cfaebaab09) |
| profile free | [GenieProfile\_free](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieProfile_8h_1a25c13e097323d87caa0fbeb61c973db1.html#exhale-function-genieprofile-8h-1a25c13e097323d87caa0fbeb61c973db1) |
| tokenizer encode | [GenieTokenizer\_encode](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieTokenizer_8h_1a0ae23b699b098076f18b7c27011c8a65.html#exhale-function-genietokenizer-8h-1a0ae23b699b098076f18b7c27011c8a65) |
| tokenizer encodeFromFile | [GenieTokenizer\_encode](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieTokenizer_8h_1a0ae23b699b098076f18b7c27011c8a65.html#exhale-function-genietokenizer-8h-1a0ae23b699b098076f18b7c27011c8a65) |
| tokenizer decode | [GenieTokenizer\_decode](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieTokenizer_8h_1a78df4f45c5196dd88ec7d42e9fef80a5.html#exhale-function-genietokenizer-8h-1a78df4f45c5196dd88ec7d42e9fef80a5) |
| tokenizer decodeFromFile | [GenieTokenizer\_decode](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieTokenizer_8h_1a78df4f45c5196dd88ec7d42e9fef80a5.html#exhale-function-genietokenizer-8h-1a78df4f45c5196dd88ec7d42e9fef80a5) |
| accuracy config create | [GenieAccuracyConfig\_createFromJson](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieAccuracy_8h_1a5992783f95a32247d7c9ced4b7379ce1.html#exhale-function-genieaccuracy-8h-1a5992783f95a32247d7c9ced4b7379ce1) |
| accuracy config free | [GenieAccuracyConfig\_free](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieAccuracy_8h_1a75113f69237d0cc6ad9b702e35b475f3.html#exhale-function-genieaccuracy-8h-1a75113f69237d0cc6ad9b702e35b475f3) |
| accuracy create | [GenieAccuracy\_createFromDialog](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieAccuracy_8h_1a67ed98eec0ba08be79623c4cb96b9c26.html#exhale-function-genieaccuracy-8h-1a67ed98eec0ba08be79623c4cb96b9c26)<br><br><br>[GenieAccuracy\_createFromNode](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieAccuracy_8h_1a89af8b4c4d354fbc787b47bd7001ea65.html#exhale-function-genieaccuracy-8h-1a89af8b4c4d354fbc787b47bd7001ea65) |
| accuracy compute | [GenieAccuracy\_compute](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieAccuracy_8h_1a691683c949d730d06593d53423422d85.html#exhale-function-genieaccuracy-8h-1a691683c949d730d06593d53423422d85) |
| accuracy free | [GenieAccuracy\_free](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieAccuracy_8h_1a6f30a3be3209ef79aec5c55f17ce6f30.html#exhale-function-genieaccuracy-8h-1a6f30a3be3209ef79aec5c55f17ce6f30) |
| sampler config create | [GenieSamplerConfig\_createFromJson](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieSampler_8h_1a2ace87fa3f10b77e38c701b357af07fa.html#exhale-function-geniesampler-8h-1a2ace87fa3f10b77e38c701b357af07fa) |
| sampler config setParam | [GenieSamplerConfig\_setParam](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieSampler_8h_1aaff7bb2ad2731bed8d52b57961156b52.html#exhale-function-geniesampler-8h-1aaff7bb2ad2731bed8d52b57961156b52) |
| sampler config free | [GenieSamplerConfig\_free](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieSampler_8h_1af22e7696884a30247a226ccbfabe3a16.html#exhale-function-geniesampler-8h-1af22e7696884a30247a226ccbfabe3a16) |
| sampler create | [GenieSampler\_create](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieSampler_8h_1a8f92f9527fe1a3724ed11f0deb2994ba.html#exhale-function-geniesampler-8h-1a8f92f9527fe1a3724ed11f0deb2994ba) |
| sampler applyConfig | [GenieSampler\_applyConfig](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieSampler_8h_1a32113d7ff630e244c328b4c023247c51.html#exhale-function-geniesampler-8h-1a32113d7ff630e244c328b4c023247c51) |
| sampler sampleData | [GenieSampler\_sampleData](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieSampler_8h_1a1e528d7c49258c0eaa16c765127ce93c.html#exhale-function-geniesampler-8h-1a1e528d7c49258c0eaa16c765127ce93c) |
| sampler free | [GenieSampler\_free](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieSampler_8h_1a3530af15b325dbe2edcfce5bc1698869.html#exhale-function-geniesampler-8h-1a3530af15b325dbe2edcfce5bc1698869) |
| version | [Genie\_getApiMajorVersion](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieCommon_8h_1aa728c0da14fe36e15a85f31837357ff8.html#exhale-function-geniecommon-8h-1aa728c0da14fe36e15a85f31837357ff8)<br><br><br>[Genie\_getApiMinorVersion](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieCommon_8h_1a88cb2c2e754e10c15f69e0d244c8a0eb.html#exhale-function-geniecommon-8h-1a88cb2c2e754e10c15f69e0d244c8a0eb)<br><br><br>[Genie\_getApiPatchVersion](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieCommon_8h_1a3a619e02e24d1dcbd51b24d53d3b63e5.html#exhale-function-geniecommon-8h-1a3a619e02e24d1dcbd51b24d53d3b63e5) |

Last Published: Jun 04, 2026

[Previous Topic
genie-t2e-run](https://docs.qualcomm.com/bundle/publicresource/80-63442-10/topics/genie-t2e-run.md) [Next Topic
qnn-genai-transformer-composer](https://docs.qualcomm.com/bundle/publicresource/80-63442-10/topics/qnn-genai-transformer-composer.md)