semantic-kernel 0.2.4.dev0__py3-none-any.whl → 0.2.5.dev0__py3-none-any.whl
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.
- semantic_kernel/{ai → connectors/ai}/chat_completion_client_base.py +1 -1
- semantic_kernel/connectors/ai/hugging_face/__init__.py +10 -0
- semantic_kernel/connectors/ai/hugging_face/services/hf_text_completion.py +95 -0
- semantic_kernel/connectors/ai/hugging_face/services/hf_text_embedding.py +63 -0
- semantic_kernel/connectors/ai/open_ai/__init__.py +29 -0
- semantic_kernel/{ai → connectors/ai}/open_ai/services/azure_chat_completion.py +2 -2
- semantic_kernel/{ai → connectors/ai}/open_ai/services/azure_text_completion.py +2 -2
- semantic_kernel/{ai → connectors/ai}/open_ai/services/azure_text_embedding.py +2 -2
- semantic_kernel/{ai → connectors/ai}/open_ai/services/open_ai_chat_completion.py +36 -4
- semantic_kernel/{ai → connectors/ai}/open_ai/services/open_ai_text_completion.py +10 -6
- semantic_kernel/{ai → connectors/ai}/open_ai/services/open_ai_text_embedding.py +2 -2
- semantic_kernel/{ai → connectors/ai}/text_completion_client_base.py +4 -2
- semantic_kernel/core_skills/time_skill.py +11 -1
- semantic_kernel/kernel.py +23 -17
- semantic_kernel/kernel_config.py +118 -109
- semantic_kernel/kernel_exception.py +4 -4
- semantic_kernel/kernel_extensions/import_skills.py +21 -21
- semantic_kernel/kernel_extensions/memory_configuration.py +10 -12
- semantic_kernel/memory/memory_query_result.py +36 -6
- semantic_kernel/memory/memory_record.py +52 -11
- semantic_kernel/memory/memory_store_base.py +74 -5
- semantic_kernel/memory/semantic_text_memory.py +92 -10
- semantic_kernel/memory/semantic_text_memory_base.py +1 -2
- semantic_kernel/memory/volatile_memory_store.py +251 -25
- semantic_kernel/orchestration/sk_function.py +32 -30
- semantic_kernel/orchestration/sk_function_base.py +11 -9
- semantic_kernel/semantic_functions/prompt_template_config.py +2 -2
- semantic_kernel/text/__init__.py +17 -0
- semantic_kernel/text/function_extension.py +23 -0
- semantic_kernel/text/text_chunker.py +250 -0
- {semantic_kernel-0.2.4.dev0.dist-info → semantic_kernel-0.2.5.dev0.dist-info}/METADATA +9 -6
- {semantic_kernel-0.2.4.dev0.dist-info → semantic_kernel-0.2.5.dev0.dist-info}/RECORD +37 -35
- semantic_kernel/ai/embeddings/embedding_index_base.py +0 -20
- semantic_kernel/ai/open_ai/__init__.py +0 -27
- semantic_kernel/memory/storage/data_entry.py +0 -36
- semantic_kernel/memory/storage/data_store_base.py +0 -36
- semantic_kernel/memory/storage/volatile_data_store.py +0 -62
- /semantic_kernel/{ai → connectors/ai}/ai_exception.py +0 -0
- /semantic_kernel/{ai → connectors/ai}/chat_request_settings.py +0 -0
- /semantic_kernel/{ai → connectors/ai}/complete_request_settings.py +0 -0
- /semantic_kernel/{ai → connectors/ai}/embeddings/embedding_generator_base.py +0 -0
- {semantic_kernel-0.2.4.dev0.dist-info → semantic_kernel-0.2.5.dev0.dist-info}/WHEEL +0 -0
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
# Copyright (c) Microsoft. All rights reserved.
|
|
2
|
-
|
|
3
|
-
from abc import ABC, abstractmethod
|
|
4
|
-
from typing import List, Tuple
|
|
5
|
-
|
|
6
|
-
from numpy import ndarray
|
|
7
|
-
|
|
8
|
-
from semantic_kernel.memory.memory_record import MemoryRecord
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
class EmbeddingIndexBase(ABC):
|
|
12
|
-
@abstractmethod
|
|
13
|
-
async def get_nearest_matches_async(
|
|
14
|
-
self,
|
|
15
|
-
collection: str,
|
|
16
|
-
embedding: ndarray,
|
|
17
|
-
limit: int,
|
|
18
|
-
min_relevance_score: float,
|
|
19
|
-
) -> List[Tuple[MemoryRecord, float]]:
|
|
20
|
-
pass
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
# Copyright (c) Microsoft. All rights reserved.
|
|
2
|
-
|
|
3
|
-
from semantic_kernel.ai.open_ai.services.azure_chat_completion import (
|
|
4
|
-
AzureChatCompletion,
|
|
5
|
-
)
|
|
6
|
-
from semantic_kernel.ai.open_ai.services.azure_text_completion import (
|
|
7
|
-
AzureTextCompletion,
|
|
8
|
-
)
|
|
9
|
-
from semantic_kernel.ai.open_ai.services.azure_text_embedding import AzureTextEmbedding
|
|
10
|
-
from semantic_kernel.ai.open_ai.services.open_ai_chat_completion import (
|
|
11
|
-
OpenAIChatCompletion,
|
|
12
|
-
)
|
|
13
|
-
from semantic_kernel.ai.open_ai.services.open_ai_text_completion import (
|
|
14
|
-
OpenAITextCompletion,
|
|
15
|
-
)
|
|
16
|
-
from semantic_kernel.ai.open_ai.services.open_ai_text_embedding import (
|
|
17
|
-
OpenAITextEmbedding,
|
|
18
|
-
)
|
|
19
|
-
|
|
20
|
-
__all__ = [
|
|
21
|
-
"OpenAITextCompletion",
|
|
22
|
-
"OpenAIChatCompletion",
|
|
23
|
-
"OpenAITextEmbedding",
|
|
24
|
-
"AzureTextCompletion",
|
|
25
|
-
"AzureChatCompletion",
|
|
26
|
-
"AzureTextEmbedding",
|
|
27
|
-
]
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
# Copyright (c) Microsoft. All rights reserved.
|
|
2
|
-
|
|
3
|
-
from datetime import datetime
|
|
4
|
-
|
|
5
|
-
from semantic_kernel.memory.memory_record import MemoryRecord
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
class DataEntry:
|
|
9
|
-
_key: str
|
|
10
|
-
_value: MemoryRecord
|
|
11
|
-
_timestamp: datetime
|
|
12
|
-
|
|
13
|
-
def __init__(self, key: str, value: MemoryRecord, timestamp: datetime) -> None:
|
|
14
|
-
self._key = key
|
|
15
|
-
self._value = value
|
|
16
|
-
self._timestamp = timestamp
|
|
17
|
-
|
|
18
|
-
@property
|
|
19
|
-
def key(self) -> str:
|
|
20
|
-
return self._key
|
|
21
|
-
|
|
22
|
-
@property
|
|
23
|
-
def value(self) -> MemoryRecord:
|
|
24
|
-
return self._value
|
|
25
|
-
|
|
26
|
-
@value.setter
|
|
27
|
-
def value(self, value: MemoryRecord) -> None:
|
|
28
|
-
self._value = value
|
|
29
|
-
|
|
30
|
-
@property
|
|
31
|
-
def timestamp(self) -> datetime:
|
|
32
|
-
return self._timestamp
|
|
33
|
-
|
|
34
|
-
@timestamp.setter
|
|
35
|
-
def timestamp(self, timestamp: datetime) -> None:
|
|
36
|
-
self._timestamp = timestamp
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
# Copyright (c) Microsoft. All rights reserved.
|
|
2
|
-
|
|
3
|
-
from abc import ABC, abstractmethod
|
|
4
|
-
from typing import Any, List, Optional
|
|
5
|
-
|
|
6
|
-
from semantic_kernel.memory.storage.data_entry import DataEntry
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
class DataStoreBase(ABC):
|
|
10
|
-
@abstractmethod
|
|
11
|
-
async def get_collections_async(self) -> List[str]:
|
|
12
|
-
pass
|
|
13
|
-
|
|
14
|
-
@abstractmethod
|
|
15
|
-
async def get_all_async(self, collection: str) -> List[Any]:
|
|
16
|
-
pass
|
|
17
|
-
|
|
18
|
-
@abstractmethod
|
|
19
|
-
async def get_async(self, collection: str, key: str) -> Optional[DataEntry]:
|
|
20
|
-
pass
|
|
21
|
-
|
|
22
|
-
@abstractmethod
|
|
23
|
-
async def put_async(self, collection: str, value: Any) -> DataEntry:
|
|
24
|
-
pass
|
|
25
|
-
|
|
26
|
-
@abstractmethod
|
|
27
|
-
async def remove_async(self, collection: str, key: str) -> None:
|
|
28
|
-
pass
|
|
29
|
-
|
|
30
|
-
@abstractmethod
|
|
31
|
-
async def get_value_async(self, collection: str, key: str) -> Any:
|
|
32
|
-
pass
|
|
33
|
-
|
|
34
|
-
@abstractmethod
|
|
35
|
-
async def put_value_async(self, collection: str, key: str, value: Any) -> None:
|
|
36
|
-
pass
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
# Copyright (c) Microsoft. All rights reserved.
|
|
2
|
-
|
|
3
|
-
from datetime import datetime
|
|
4
|
-
from typing import Dict, List, Optional
|
|
5
|
-
|
|
6
|
-
from semantic_kernel.memory.memory_record import MemoryRecord
|
|
7
|
-
from semantic_kernel.memory.storage.data_entry import DataEntry
|
|
8
|
-
from semantic_kernel.memory.storage.data_store_base import DataStoreBase
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
class VolatileDataStore(DataStoreBase):
|
|
12
|
-
_store: Dict[str, Dict[str, DataEntry]]
|
|
13
|
-
|
|
14
|
-
def __init__(self) -> None:
|
|
15
|
-
self._store = {}
|
|
16
|
-
|
|
17
|
-
async def get_collections_async(self) -> List[str]:
|
|
18
|
-
return list(self._store.keys())
|
|
19
|
-
|
|
20
|
-
async def get_all_async(self, collection: str) -> List[DataEntry]:
|
|
21
|
-
if collection not in self._store:
|
|
22
|
-
return []
|
|
23
|
-
|
|
24
|
-
return list(self._store[collection].values())
|
|
25
|
-
|
|
26
|
-
async def get_async(self, collection: str, key: str) -> Optional[DataEntry]:
|
|
27
|
-
if collection not in self._store:
|
|
28
|
-
return None
|
|
29
|
-
if key not in self._store[collection]:
|
|
30
|
-
return None
|
|
31
|
-
|
|
32
|
-
return self._store[collection][key]
|
|
33
|
-
|
|
34
|
-
async def put_async(self, collection: str, value: DataEntry) -> DataEntry:
|
|
35
|
-
if collection not in self._store:
|
|
36
|
-
self._store[collection] = {}
|
|
37
|
-
|
|
38
|
-
self._store[collection][value.key] = value
|
|
39
|
-
|
|
40
|
-
return value
|
|
41
|
-
|
|
42
|
-
async def remove_async(self, collection: str, key: str) -> None:
|
|
43
|
-
if collection not in self._store:
|
|
44
|
-
return
|
|
45
|
-
if key not in self._store[collection]:
|
|
46
|
-
return
|
|
47
|
-
|
|
48
|
-
del self._store[collection][key]
|
|
49
|
-
|
|
50
|
-
async def get_value_async(self, collection: str, key: str) -> MemoryRecord:
|
|
51
|
-
entry = await self.get_async(collection, key)
|
|
52
|
-
|
|
53
|
-
if entry is None:
|
|
54
|
-
# TODO: equivalent here?
|
|
55
|
-
raise Exception(f"Key '{key}' not found in collection '{collection}'")
|
|
56
|
-
|
|
57
|
-
return entry.value
|
|
58
|
-
|
|
59
|
-
async def put_value_async(
|
|
60
|
-
self, collection: str, key: str, value: MemoryRecord
|
|
61
|
-
) -> None:
|
|
62
|
-
await self.put_async(collection, DataEntry(key, value, datetime.now()))
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|