llm-sdk 0.0.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
llm_sdk-0.0.1/PKG-INFO ADDED
@@ -0,0 +1,13 @@
1
+ Metadata-Version: 2.1
2
+ Name: llm_sdk
3
+ Version: 0.0.1
4
+ Summary: SDK to get all the available LLM models per Provider
5
+ Author: Olsi Hoxha
6
+ Author-email: olsihoxha824l@gmail.com
7
+ Classifier: Programming Language :: Python :: 3
8
+ Classifier: License :: OSI Approved :: MIT License
9
+ Classifier: Operating System :: OS Independent
10
+ Requires-Python: >=3.6
11
+ Description-Content-Type: text/markdown
12
+
13
+ # LLM SDK
@@ -0,0 +1 @@
1
+ # LLM SDK
@@ -0,0 +1 @@
1
+ from ai_models_sdk import ai_models
@@ -0,0 +1,35 @@
1
+ import requests
2
+ from typing import List, Optional
3
+ from pydantic import parse_obj_as
4
+ from schemas_sdk import AvailableModelModel, ProviderModel
5
+
6
+
7
+ class ModelsAPI:
8
+ def __init__(self, base_url: str):
9
+ self.base_url = base_url
10
+
11
+ def get_available_models(
12
+ self, model_type_name: Optional[str] = None, provider_name: Optional[str] = None,
13
+ is_verified: Optional[bool] = None
14
+ ) -> List[AvailableModelModel]:
15
+ params = {}
16
+ if model_type_name:
17
+ params['model_type_name'] = model_type_name
18
+ if provider_name:
19
+ params['provider_name'] = provider_name
20
+ if is_verified is not None:
21
+ params['is_verified'] = str(is_verified).lower()
22
+ response = requests.get(f"{self.base_url}/available-models/", params=params)
23
+ response.raise_for_status()
24
+ return parse_obj_as(List[AvailableModelModel], response.json())
25
+
26
+ def get_providers(self, model_type_name: Optional[str] = None) -> List[ProviderModel]:
27
+ params = {}
28
+ if model_type_name:
29
+ params['model_type_name'] = model_type_name
30
+ response = requests.get(f"{self.base_url}/providers/", params=params)
31
+ response.raise_for_status()
32
+ return parse_obj_as(List[ProviderModel], response.json())
33
+
34
+
35
+ ai_models = ModelsAPI('http://127.0.0.1:8000/')
@@ -0,0 +1,26 @@
1
+ from pydantic import BaseModel
2
+ from typing import Optional
3
+
4
+
5
+ class ProviderModel(BaseModel):
6
+ name: str
7
+ description: Optional[str]
8
+ req_integration_params: dict
9
+
10
+
11
+ class ModelCreatorModel(BaseModel):
12
+ name: str
13
+ description: str
14
+
15
+
16
+ class AvailableModelModel(BaseModel):
17
+ provider: ProviderModel
18
+ creator: ModelCreatorModel
19
+ model_type: str
20
+ name: str
21
+ model_name: Optional[str]
22
+ model_version: Optional[str]
23
+ is_verified: bool
24
+ cost_input_token: float
25
+ cost_output_token: float
26
+
@@ -0,0 +1,13 @@
1
+ Metadata-Version: 2.1
2
+ Name: llm_sdk
3
+ Version: 0.0.1
4
+ Summary: SDK to get all the available LLM models per Provider
5
+ Author: Olsi Hoxha
6
+ Author-email: olsihoxha824l@gmail.com
7
+ Classifier: Programming Language :: Python :: 3
8
+ Classifier: License :: OSI Approved :: MIT License
9
+ Classifier: Operating System :: OS Independent
10
+ Requires-Python: >=3.6
11
+ Description-Content-Type: text/markdown
12
+
13
+ # LLM SDK
@@ -0,0 +1,9 @@
1
+ README.md
2
+ setup.py
3
+ llm_sdk/__init__.py
4
+ llm_sdk/ai_models_sdk.py
5
+ llm_sdk/schemas_sdk.py
6
+ llm_sdk.egg-info/PKG-INFO
7
+ llm_sdk.egg-info/SOURCES.txt
8
+ llm_sdk.egg-info/dependency_links.txt
9
+ llm_sdk.egg-info/top_level.txt
@@ -0,0 +1 @@
1
+ llm_sdk
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
llm_sdk-0.0.1/setup.py ADDED
@@ -0,0 +1,18 @@
1
+ from setuptools import setup, find_packages
2
+
3
+ setup(
4
+ name='llm_sdk',
5
+ version='0.0.1',
6
+ author='Olsi Hoxha',
7
+ author_email='olsihoxha824l@gmail.com',
8
+ description='SDK to get all the available LLM models per Provider',
9
+ long_description=open('README.md').read(),
10
+ long_description_content_type='text/markdown',
11
+ packages=find_packages(),
12
+ classifiers=[
13
+ 'Programming Language :: Python :: 3',
14
+ 'License :: OSI Approved :: MIT License',
15
+ 'Operating System :: OS Independent',
16
+ ],
17
+ python_requires='>=3.6',
18
+ )