Skip to content

Commit be84825

Browse files
jameszyaoSimsonW
authored andcommitted
feat: Use pydantic model to replace original ones
1 parent 92d2fb2 commit be84825

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

53 files changed

+399
-5159
lines changed

examples/assistant/chat_with_assistant.ipynb

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,11 @@
22
"cells": [
33
{
44
"cell_type": "code",
5-
"execution_count": 11,
5+
"execution_count": null,
66
"id": "initial_id",
77
"metadata": {
88
"collapsed": true,
9-
"ExecuteTime": {
10-
"end_time": "2023-11-28T08:47:28.230279Z",
11-
"start_time": "2023-11-28T08:47:28.205410Z"
12-
}
9+
"is_executing": true
1310
},
1411
"outputs": [],
1512
"source": [
@@ -133,7 +130,7 @@
133130
"actions: List[Action] = taskingai.tool.bulk_create_actions(\n",
134131
" schema=NUMBERS_API_SCHEMA,\n",
135132
" authentication=ActionAuthentication(\n",
136-
" type=ActionAuthenticationType.NONE,\n",
133+
" type=ActionAuthenticationType.none,\n",
137134
" )\n",
138135
")\n",
139136
"action = actions[0]\n",
@@ -280,7 +277,7 @@
280277
" \"language\": \"Spanish\"\n",
281278
" }\n",
282279
" )\n",
283-
" print(f\"Assistant: {assistant_message.content['text']}\")\n",
280+
" print(f\"Assistant: {assistant_message.content.text}\")\n",
284281
" time.sleep(2)\n",
285282
" user_input = input(\"User: \")"
286283
],
@@ -319,7 +316,7 @@
319316
" chat_id=chat.chat_id,\n",
320317
")\n",
321318
"for message in messages:\n",
322-
" print(f\"{message.role}: {message.content['text']}\")"
319+
" print(f\"{message.role}: {message.content.text}\")"
323320
],
324321
"metadata": {
325322
"collapsed": false,

examples/inference/chat_completion.ipynb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -242,7 +242,7 @@
242242
],
243243
"source": [
244244
"# add function message\n",
245-
"chat_completion = taskingai.inference.chat_completion(\n",
245+
"chat_completion_result = taskingai.inference.chat_completion(\n",
246246
" model_id=model_id,\n",
247247
" messages=[\n",
248248
" SystemMessage(\"You are a professional assistant.\"),\n",

examples/retrieval/semantic_search.ipynb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,7 @@
193193
{
194194
"cell_type": "markdown",
195195
"source": [
196-
"## Query Relavent Chunks"
196+
"## Query Relevant Chunks"
197197
],
198198
"metadata": {
199199
"collapsed": false

taskingai/assistant/assistant.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
from typing import Optional, List, Dict
22

33
from taskingai.client.utils import get_api_instance, ModuleType
4-
from taskingai.client.constants import AssistantToolType, AssistantRetrievalType
5-
from taskingai.client.models import Assistant, AssistantRetrieval, AssistantTool
4+
from taskingai.client.models import Assistant, AssistantRetrieval, AssistantTool, AssistantToolType, AssistantRetrievalType
65
from taskingai.client.models import AssistantCreateRequest, AssistantCreateResponse,\
76
AssistantUpdateRequest, AssistantUpdateResponse,\
87
AssistantGetResponse, AssistantListResponse

taskingai/assistant/message.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,7 @@ async def a_create_user_message(
199199

200200
api_instance = get_api_instance(ModuleType.assistant, async_client=True)
201201
body = MessageCreateRequest(
202-
role=MessageRole.USER,
202+
role=MessageRole.user,
203203
content=MessageContent(text=text),
204204
metadata=metadata,
205205
)

taskingai/client/api_client.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
from taskingai.client.configuration import Configuration
2121
from taskingai.client import rest
2222
import taskingai.client as client
23+
from pydantic import BaseModel
2324

2425

2526
class BaseApiClient(object):
@@ -105,6 +106,8 @@ def sanitize_for_serialization(self, obj):
105106
for sub_obj in obj)
106107
elif isinstance(obj, (datetime.datetime, datetime.date)):
107108
return obj.isoformat()
109+
elif isinstance(obj, BaseModel):
110+
return obj.model_dump()
108111

109112
if isinstance(obj, dict):
110113
obj_dict = obj

taskingai/client/constants.py

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,6 @@ class ModuleType(str, Enum):
1010
inference = "inference"
1111

1212

13-
class AssistantToolType(str, Enum):
14-
action = "action"
15-
function = "function"
16-
17-
18-
class AssistantRetrievalType(str, Enum):
19-
collection = "collection"
20-
21-
2213

2314

2415

taskingai/client/models/__init__.py

Lines changed: 10 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -10,33 +10,16 @@
1010
from __future__ import absolute_import
1111

1212
# import models into model package
13-
from taskingai.client.models.entity.action import Action
14-
from taskingai.client.models.entity.action_authentication import ActionAuthentication
15-
from taskingai.client.models.entity.action_authentication_type import ActionAuthenticationType
16-
from taskingai.client.models.entity.assistant import Assistant
17-
from taskingai.client.models.entity.assistant_retrieval import AssistantRetrieval
18-
from taskingai.client.models.entity.assistant_tool import AssistantTool
19-
from taskingai.client.models.entity.chat import Chat
20-
from taskingai.client.models.entity.chat_completion import ChatCompletion
21-
from taskingai.client.models.entity.chat_completion_assistant_message import ChatCompletionAssistantMessage
22-
from taskingai.client.models.entity.chat_completion_function import ChatCompletionFunction
23-
from taskingai.client.models.entity.chat_completion_function_call import ChatCompletionFunctionCall
24-
from taskingai.client.models.entity.chat_completion_function_message import ChatCompletionFunctionMessage
25-
from taskingai.client.models.entity.chat_completion_role import ChatCompletionRole
26-
from taskingai.client.models.entity.chat_completion_system_message import ChatCompletionSystemMessage
27-
from taskingai.client.models.entity.chat_completion_user_message import ChatCompletionUserMessage
28-
from taskingai.client.models.entity.chunk import Chunk
29-
from taskingai.client.models.entity.collection import Collection
30-
from taskingai.client.models.entity.collection_config import CollectionConfig
31-
from taskingai.client.models.entity.function import Function
32-
from taskingai.client.models.entity.message import Message
33-
from taskingai.client.models.entity.message_content import MessageContent
34-
from taskingai.client.models.entity.message_role import MessageRole
35-
from taskingai.client.models.entity.parameters_input import ParametersInput
36-
from taskingai.client.models.entity.parameters_output import ParametersOutput
37-
from taskingai.client.models.entity.record import Record
38-
from taskingai.client.models.entity.text_embedding_output import TextEmbeddingOutput
39-
from taskingai.client.models.entity.message_generation_response_option import MessageGenerationResponseOption
13+
from taskingai.client.models.entity.assistant.assistant import *
14+
from taskingai.client.models.entity.assistant.chat import *
15+
from taskingai.client.models.entity.assistant.message import *
16+
from taskingai.client.models.entity.tool.action import *
17+
from taskingai.client.models.entity.tool.function import *
18+
from taskingai.client.models.entity.retrieval.collection import *
19+
from taskingai.client.models.entity.retrieval.record import *
20+
from taskingai.client.models.entity.retrieval.chunk import *
21+
from taskingai.client.models.entity.inference.text_embedding import *
22+
from taskingai.client.models.entity.inference.chat_completion import *
4023
from taskingai.client.models.rest.action_bulk_create_request import ActionBulkCreateRequest
4124
from taskingai.client.models.rest.action_bulk_create_response import ActionBulkCreateResponse
4225
from taskingai.client.models.rest.action_delete_response import ActionDeleteResponse
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# coding: utf-8
2+
3+
"""
4+
TaskingAI API
5+
6+
OpenAPI spec version: 0.1.0
7+
"""
8+
9+
from pydantic import BaseModel
10+
11+
12+
class TaskingaiBaseModel(BaseModel):
13+
14+
def to_dict(self):
15+
"""Returns the model properties as a dict"""
16+
return self.model_dump()
17+
18+
def to_str(self):
19+
"""Returns the string representation of the model"""
20+
return self.model_dump_json()
21+
22+

0 commit comments

Comments
 (0)