
    *i!                        S r SSKJr  SSKrSSKrSSKrSSKrSSKJr  SSK	J
r
JrJrJr  SSKJrJr  S r\S:X  a  \" 5         gg)	aY  Example FastAPI server for llama.cpp.

To run this example:

```bash
pip install fastapi uvicorn sse-starlette pydantic-settings
export MODEL=../models/7B/...
```

Then run:
```
uvicorn llama_cpp.server.app:create_app --reload
```

or

```
python3 -m llama_cpp.server
```

Then visit http://localhost:8000/docs to see the interactive API docs.

    )annotationsN)
create_app)SettingsServerSettingsModelSettingsConfigFileSettings)add_args_from_modelparse_model_from_argsc            
        Sn [         R                  " U S9n[        U[        5        UR	                  S[
        SS9  S n/ nUR                  5       n [        R                  R                  SUR                  5      nU(       a  [        R                  R                  U5      (       d  [        SU S35      e[        US	5       nUR                  S
5      (       d  UR                  S5      (       a=  SS KnSS Kn[$        R&                  " UR)                  UR+                  U5      5      5      n	O$[$        R&                  " UR-                  5       5      n	[.        R0                  " U	5      nU	R2                  nS S S 5        O"[5        [.        U5      n[5        [6        U5      /n Uc   eUc   e[E        UUS9n[F        RH                  " U[        RJ                  " SURL                  5      [O        [        RJ                  " SURP                  5      5      URR                  URT                  S9  g ! , (       d  f       N= f! [8         aH  n
[;        U
[<        R>                  S9  URA                  5         [<        RB                  " S5         S n
A
NS n
A
ff = f)Nu5   🦙 Llama.cpp python server. Host your own LLMs!🚀)descriptionz--config_filezPath to a config file to load.)typehelpCONFIG_FILEzConfig file z not found!rbz.yamlz.ymlr   )file   )server_settingsmodel_settingsHOSTPORT)hostportssl_keyfilessl_certfile)+argparseArgumentParserr	   r   add_argumentstr
parse_argsosenvirongetconfig_filepathexists
ValueErroropenendswithyamljsonr   model_validate_jsondumps	safe_loadreadr   model_validatemodelsr
   r   	Exceptionprintsysstderr
print_helpexitr   uvicornrungetenvr   intr   r   r   )r   parserr   r   argsr#   fr)   r*   config_file_settingseapps               W/var/www/html/ai-backend/venv/lib/python3.13/site-packages/llama_cpp/server/__main__.pymainrB   +   s   IK$$=F)
-  
 .2O*,NDjjnn]D4D4DE77>>+.. <}K!HIIk4(A''00K4H4H4P4P+=+Q+Q

4>>!#45,( ,>+Q+Q,( #1"?"?@T"U!5!<!< )(  4NDIO3M4HIN
 &&&%%%
'%C KKYYv3346?#7#789#//$119 )($  acjj!s>   A0H5 B0H$1H5 :!H5 $
H2.H5 2H5 5
J?>JJ__main__)__doc__
__future__r   r    r3   r   r7   llama_cpp.server.appr   llama_cpp.server.settingsr   r   r   r   llama_cpp.server.clir	   r
   rB   __name__     rA   <module>rL      sH   0 # 	 
   +  L5p zF rK   