Schema Idea
All checks were successful
Build and push Docker image at git tag / build (push) Successful in 44s
All checks were successful
Build and push Docker image at git tag / build (push) Successful in 44s
This commit is contained in:
parent
786a230e78
commit
f2f9819d27
@ -1,13 +1,25 @@
|
||||
# Agenten Plattform
|
||||
#
|
||||
# (c) 2024 Magnus Bender
|
||||
# Institute of Humanities-Centered Artificial Intelligence (CHAI)
|
||||
# Universitaet Hamburg
|
||||
# https://www.chai.uni-hamburg.de/~bender
|
||||
#
|
||||
# source code released under the terms of GNU Public License Version 3
|
||||
# https://www.gnu.org/licenses/gpl-3.0.txt
|
||||
|
||||
import random
|
||||
import random, os, json
|
||||
|
||||
from abc import abstractmethod, ABC
|
||||
from enum import Enum
|
||||
from typing import List, Callable
|
||||
|
||||
from pydantic import validate_call
|
||||
|
||||
from ums.utils import (
|
||||
RiddleInformation, AgentMessage, RiddleDataType, RiddleData, Riddle,
|
||||
RiddleStatus, RiddleSolution,
|
||||
ExtractedData,
|
||||
logger
|
||||
)
|
||||
|
||||
@ -34,6 +46,7 @@ class BasicAgent(ABC):
|
||||
"""
|
||||
pass
|
||||
|
||||
@validate_call
|
||||
def __init__(self, message:AgentMessage, send_message:Callable[[AgentMessage], bool]):
|
||||
self._send_message = send_message
|
||||
self._sub_cnt = 0
|
||||
@ -57,7 +70,8 @@ class BasicAgent(ABC):
|
||||
logger.debug(f"Response sent {self._response.id}")
|
||||
else:
|
||||
logger.debug(f"Stopped response {self._response.id}")
|
||||
|
||||
|
||||
@validate_call
|
||||
def before_response(self, response:AgentMessage, send_it:Callable[[], None]) -> bool:
|
||||
"""
|
||||
This method is called before the response is sent.
|
||||
@ -69,12 +83,14 @@ class BasicAgent(ABC):
|
||||
"""
|
||||
return True
|
||||
|
||||
@validate_call
|
||||
def message(self) -> AgentMessage:
|
||||
"""
|
||||
Get the message this agent object is working on.
|
||||
"""
|
||||
return self._message;
|
||||
|
||||
@validate_call
|
||||
def sub_riddle(self,
|
||||
riddle:Riddle, data:List[RiddleData]=[], status:RiddleStatus=None
|
||||
) -> AgentMessage|bool:
|
||||
@ -122,6 +138,21 @@ class BasicAgent(ABC):
|
||||
"""
|
||||
pass
|
||||
|
||||
@validate_call
|
||||
def get_extracted(self, data:RiddleData) -> ExtractedData|None:
|
||||
"""
|
||||
Loads the extracted data from the `data` item (i.e., from the file `data.file_extracted`).
|
||||
|
||||
Returns None if no extracted data found.
|
||||
"""
|
||||
|
||||
if not data.file_extracted is None:
|
||||
return ExtractedData.model_validate(
|
||||
json.load(open(data.file_extracted, 'r'))
|
||||
)
|
||||
|
||||
return None
|
||||
|
||||
class ExtractAgent(BasicAgent):
|
||||
"""
|
||||
An extraction agent.
|
||||
@ -154,11 +185,33 @@ class ExtractAgent(BasicAgent):
|
||||
self._response.status.extract.finished = True
|
||||
|
||||
@abstractmethod
|
||||
@validate_call
|
||||
def handle(self, data:RiddleData) -> RiddleData:
|
||||
"""
|
||||
Process the item `data`, create extraction file and return `data` with populated `data.file_extracted`.
|
||||
"""
|
||||
|
||||
@validate_call
|
||||
def store_extracted(self, data:RiddleData, extracted:ExtractedData) -> str:
|
||||
"""
|
||||
Stores the newly extracted data (in `extracted`) from `data` (i.e., `data.file_plain`)
|
||||
and returns the filename to use in `data.file_extracted`.
|
||||
"""
|
||||
|
||||
path_name = data.file_plain[:data.file_plain.rfind('.')]
|
||||
|
||||
candidate = "{}.json".format(path_name)
|
||||
cnt = 0
|
||||
while os.path.isfile(candidate):
|
||||
cnt += 1
|
||||
candidate = "{}-{}.json".format(path_name, cnt)
|
||||
|
||||
with open(candidate, 'w+') as f:
|
||||
f.write(extracted.model_dump_json())
|
||||
|
||||
return candidate
|
||||
|
||||
|
||||
class ExtractTextAgent(ExtractAgent):
|
||||
"""
|
||||
An extraction agent for text, create a subclass for your agent.
|
||||
@ -206,7 +259,8 @@ class SolveAgent(BasicAgent):
|
||||
self._do_response = True
|
||||
|
||||
@abstractmethod
|
||||
def handle(self, riddle:Riddle, data:RiddleData) -> RiddleSolution:
|
||||
@validate_call
|
||||
def handle(self, riddle: Riddle, data: List[RiddleData]) -> RiddleSolution:
|
||||
"""
|
||||
Solve the `riddle` using `data` and return a solution.
|
||||
"""
|
||||
@ -237,6 +291,7 @@ class GatekeeperAgent(BasicAgent):
|
||||
self._do_response = True
|
||||
|
||||
@abstractmethod
|
||||
@validate_call
|
||||
def handle(self, solution:RiddleSolution, riddle:Riddle) -> RiddleSolution:
|
||||
"""
|
||||
Check the `solution` of `riddle` and return solution with populated `solution.accepted` and `solution.review`.
|
||||
|
@ -8,10 +8,10 @@
|
||||
# source code released under the terms of GNU Public License Version 3
|
||||
# https://www.gnu.org/licenses/gpl-3.0.txt
|
||||
|
||||
from typing import Callable
|
||||
from typing import Callable, List
|
||||
from ums.agent import ExtractAudioAgent, ExtractImageAgent, ExtractTextAgent, SolveAgent, GatekeeperAgent
|
||||
|
||||
from ums.utils.types import AgentMessage, Riddle, RiddleData, RiddleSolution, RiddleStatus
|
||||
from ums.utils import AgentMessage, Riddle, RiddleData, RiddleSolution, RiddleStatus, ExtractedData
|
||||
|
||||
"""
|
||||
Examples for simple agents.
|
||||
@ -31,6 +31,9 @@ class MyExtractImageAgent(ExtractImageAgent):
|
||||
|
||||
def handle(self, data: RiddleData) -> RiddleData:
|
||||
print("Image Process:", data.file_plain)
|
||||
|
||||
extracted = ExtractedData(other={"info":"just a test"})
|
||||
data.file_extracted = self.store_extracted(data, extracted)
|
||||
return data
|
||||
|
||||
class MyExtractTextAgent(ExtractTextAgent):
|
||||
@ -46,7 +49,10 @@ class MyExtractTextAgent(ExtractTextAgent):
|
||||
|
||||
class MySolveAgent(SolveAgent):
|
||||
|
||||
def handle(self, riddle: Riddle, data: RiddleData) -> RiddleSolution:
|
||||
def handle(self, riddle: Riddle, data: List[RiddleData]) -> RiddleSolution:
|
||||
|
||||
for d in data:
|
||||
print(self.get_extracted(d))
|
||||
|
||||
if self.message().id == "test":
|
||||
status = RiddleStatus()
|
||||
|
@ -38,3 +38,8 @@ from ums.utils.types import (
|
||||
from ums.utils.request import ManagementRequest
|
||||
|
||||
from ums.utils.functions import list_shared_data, list_shared_schema
|
||||
|
||||
from ums.utils.schema import (
|
||||
ExtractionSchema,
|
||||
ExtractedData
|
||||
)
|
||||
|
@ -13,15 +13,73 @@
|
||||
The types are implemented using [pydantic](https://docs.pydantic.dev/).
|
||||
It provides validation, allow JSON serialization and works well with [FastAPI](https://fastapi.tiangolo.com/) which is used internally for the http request between the agents and the management.
|
||||
|
||||
**This is work in progress!**
|
||||
"""
|
||||
|
||||
from enum import Enum
|
||||
|
||||
from typing import List, Any
|
||||
from typing import List, Any, Dict
|
||||
|
||||
from pydantic import BaseModel
|
||||
|
||||
class ExtractionSchema(BaseModel):
|
||||
"""
|
||||
This is the basic class used as superclass for all extracted information from data items.
|
||||
"""
|
||||
|
||||
For all the `ExtractionSchema` is is required that the data can be serialized to json.
|
||||
Thus, mostly only default data types like `int, str, bool, list, dict, tuple` also including `ExtractionSchema` and `RiddleInformation` can be used here!
|
||||
"""
|
||||
|
||||
class ExtractedContent(ExtractionSchema):
|
||||
"""
|
||||
An extracted content item.
|
||||
"""
|
||||
|
||||
type : str
|
||||
"""
|
||||
The type, as a string, the actual string will depend on the extraction agent.
|
||||
"""
|
||||
|
||||
content : str | Any
|
||||
"""
|
||||
The extracted content
|
||||
"""
|
||||
|
||||
class ExtractedPositions(ExtractionSchema):
|
||||
"""
|
||||
A position (like time, coordinates, ...) where something was extracted (each position should belong to a content item).
|
||||
"""
|
||||
|
||||
type : str
|
||||
"""
|
||||
The type, as a string, the actual string will depend on the extraction agent.
|
||||
"""
|
||||
|
||||
position : str | int | Any
|
||||
"""
|
||||
The position, will also depend on the extraction agent.
|
||||
"""
|
||||
|
||||
description : str | Any = None
|
||||
"""
|
||||
An optional description for more details.
|
||||
"""
|
||||
|
||||
class ExtractedData(ExtractionSchema):
|
||||
"""
|
||||
Contains the extracted items from a data file.
|
||||
"""
|
||||
|
||||
contents : List[ExtractedContent] = []
|
||||
"""
|
||||
The extracted contents (i.e., transcriptions etc.), each item here should belong a position item at the same index.
|
||||
"""
|
||||
|
||||
positions : List[ExtractedPositions] = []
|
||||
"""
|
||||
The positions of extracted contents, each item here should belong a content item at the same index.
|
||||
"""
|
||||
|
||||
other : Dict[str, Any] = {}
|
||||
"""
|
||||
Possibly more data. Use a keywords (depending on agent) and store the data there.
|
||||
"""
|
||||
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
@ -114,10 +114,10 @@
|
||||
</span><span id="L-8"><a href="#L-8"><span class="linenos"> 8</span></a><span class="c1"># source code released under the terms of GNU Public License Version 3</span>
|
||||
</span><span id="L-9"><a href="#L-9"><span class="linenos"> 9</span></a><span class="c1"># https://www.gnu.org/licenses/gpl-3.0.txt</span>
|
||||
</span><span id="L-10"><a href="#L-10"><span class="linenos">10</span></a>
|
||||
</span><span id="L-11"><a href="#L-11"><span class="linenos">11</span></a><span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Callable</span>
|
||||
</span><span id="L-11"><a href="#L-11"><span class="linenos">11</span></a><span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Callable</span><span class="p">,</span> <span class="n">List</span>
|
||||
</span><span id="L-12"><a href="#L-12"><span class="linenos">12</span></a><span class="kn">from</span> <span class="nn">ums.agent</span> <span class="kn">import</span> <span class="n">ExtractAudioAgent</span><span class="p">,</span> <span class="n">ExtractImageAgent</span><span class="p">,</span> <span class="n">ExtractTextAgent</span><span class="p">,</span> <span class="n">SolveAgent</span><span class="p">,</span> <span class="n">GatekeeperAgent</span>
|
||||
</span><span id="L-13"><a href="#L-13"><span class="linenos">13</span></a>
|
||||
</span><span id="L-14"><a href="#L-14"><span class="linenos">14</span></a><span class="kn">from</span> <span class="nn">ums.utils.types</span> <span class="kn">import</span> <span class="n">AgentMessage</span><span class="p">,</span> <span class="n">Riddle</span><span class="p">,</span> <span class="n">RiddleData</span><span class="p">,</span> <span class="n">RiddleSolution</span><span class="p">,</span> <span class="n">RiddleStatus</span>
|
||||
</span><span id="L-14"><a href="#L-14"><span class="linenos">14</span></a><span class="kn">from</span> <span class="nn">ums.utils</span> <span class="kn">import</span> <span class="n">AgentMessage</span><span class="p">,</span> <span class="n">Riddle</span><span class="p">,</span> <span class="n">RiddleData</span><span class="p">,</span> <span class="n">RiddleSolution</span><span class="p">,</span> <span class="n">RiddleStatus</span><span class="p">,</span> <span class="n">ExtractedData</span>
|
||||
</span><span id="L-15"><a href="#L-15"><span class="linenos">15</span></a>
|
||||
</span><span id="L-16"><a href="#L-16"><span class="linenos">16</span></a><span class="sd">"""</span>
|
||||
</span><span id="L-17"><a href="#L-17"><span class="linenos">17</span></a><span class="sd"> Examples for simple agents.</span>
|
||||
@ -137,44 +137,50 @@
|
||||
</span><span id="L-31"><a href="#L-31"><span class="linenos">31</span></a>
|
||||
</span><span id="L-32"><a href="#L-32"><span class="linenos">32</span></a> <span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">data</span><span class="p">:</span> <span class="n">RiddleData</span><span class="p">)</span> <span class="o">-></span> <span class="n">RiddleData</span><span class="p">:</span>
|
||||
</span><span id="L-33"><a href="#L-33"><span class="linenos">33</span></a> <span class="nb">print</span><span class="p">(</span><span class="s2">"Image Process:"</span><span class="p">,</span> <span class="n">data</span><span class="o">.</span><span class="n">file_plain</span><span class="p">)</span>
|
||||
</span><span id="L-34"><a href="#L-34"><span class="linenos">34</span></a> <span class="k">return</span> <span class="n">data</span>
|
||||
</span><span id="L-35"><a href="#L-35"><span class="linenos">35</span></a>
|
||||
</span><span id="L-36"><a href="#L-36"><span class="linenos">36</span></a><span class="k">class</span> <span class="nc">MyExtractTextAgent</span><span class="p">(</span><span class="n">ExtractTextAgent</span><span class="p">):</span>
|
||||
</span><span id="L-37"><a href="#L-37"><span class="linenos">37</span></a>
|
||||
</span><span id="L-38"><a href="#L-38"><span class="linenos">38</span></a> <span class="k">def</span> <span class="nf">before_response</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response</span><span class="p">:</span> <span class="n">AgentMessage</span><span class="p">,</span> <span class="n">send_it</span><span class="p">:</span> <span class="n">Callable</span><span class="p">[[],</span> <span class="kc">None</span><span class="p">])</span> <span class="o">-></span> <span class="nb">bool</span><span class="p">:</span>
|
||||
</span><span id="L-39"><a href="#L-39"><span class="linenos">39</span></a> <span class="nb">print</span><span class="p">(</span><span class="s2">"The response will be:"</span><span class="p">,</span> <span class="n">response</span><span class="p">)</span>
|
||||
</span><span id="L-40"><a href="#L-40"><span class="linenos">40</span></a> <span class="k">return</span> <span class="kc">True</span>
|
||||
</span><span id="L-41"><a href="#L-41"><span class="linenos">41</span></a>
|
||||
</span><span id="L-42"><a href="#L-42"><span class="linenos">42</span></a> <span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">data</span><span class="p">:</span> <span class="n">RiddleData</span><span class="p">)</span> <span class="o">-></span> <span class="n">RiddleData</span><span class="p">:</span>
|
||||
</span><span id="L-43"><a href="#L-43"><span class="linenos">43</span></a> <span class="nb">print</span><span class="p">(</span><span class="s2">"Text Process:"</span><span class="p">,</span> <span class="n">data</span><span class="o">.</span><span class="n">file_plain</span><span class="p">)</span>
|
||||
</span><span id="L-44"><a href="#L-44"><span class="linenos">44</span></a> <span class="k">return</span> <span class="n">data</span>
|
||||
</span><span id="L-45"><a href="#L-45"><span class="linenos">45</span></a>
|
||||
</span><span id="L-46"><a href="#L-46"><span class="linenos">46</span></a>
|
||||
</span><span id="L-47"><a href="#L-47"><span class="linenos">47</span></a><span class="k">class</span> <span class="nc">MySolveAgent</span><span class="p">(</span><span class="n">SolveAgent</span><span class="p">):</span>
|
||||
</span><span id="L-34"><a href="#L-34"><span class="linenos">34</span></a>
|
||||
</span><span id="L-35"><a href="#L-35"><span class="linenos">35</span></a> <span class="n">extracted</span> <span class="o">=</span> <span class="n">ExtractedData</span><span class="p">(</span><span class="n">other</span><span class="o">=</span><span class="p">{</span><span class="s2">"info"</span><span class="p">:</span><span class="s2">"just a test"</span><span class="p">})</span>
|
||||
</span><span id="L-36"><a href="#L-36"><span class="linenos">36</span></a> <span class="n">data</span><span class="o">.</span><span class="n">file_extracted</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">store_extracted</span><span class="p">(</span><span class="n">data</span><span class="p">,</span> <span class="n">extracted</span><span class="p">)</span>
|
||||
</span><span id="L-37"><a href="#L-37"><span class="linenos">37</span></a> <span class="k">return</span> <span class="n">data</span>
|
||||
</span><span id="L-38"><a href="#L-38"><span class="linenos">38</span></a>
|
||||
</span><span id="L-39"><a href="#L-39"><span class="linenos">39</span></a><span class="k">class</span> <span class="nc">MyExtractTextAgent</span><span class="p">(</span><span class="n">ExtractTextAgent</span><span class="p">):</span>
|
||||
</span><span id="L-40"><a href="#L-40"><span class="linenos">40</span></a>
|
||||
</span><span id="L-41"><a href="#L-41"><span class="linenos">41</span></a> <span class="k">def</span> <span class="nf">before_response</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response</span><span class="p">:</span> <span class="n">AgentMessage</span><span class="p">,</span> <span class="n">send_it</span><span class="p">:</span> <span class="n">Callable</span><span class="p">[[],</span> <span class="kc">None</span><span class="p">])</span> <span class="o">-></span> <span class="nb">bool</span><span class="p">:</span>
|
||||
</span><span id="L-42"><a href="#L-42"><span class="linenos">42</span></a> <span class="nb">print</span><span class="p">(</span><span class="s2">"The response will be:"</span><span class="p">,</span> <span class="n">response</span><span class="p">)</span>
|
||||
</span><span id="L-43"><a href="#L-43"><span class="linenos">43</span></a> <span class="k">return</span> <span class="kc">True</span>
|
||||
</span><span id="L-44"><a href="#L-44"><span class="linenos">44</span></a>
|
||||
</span><span id="L-45"><a href="#L-45"><span class="linenos">45</span></a> <span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">data</span><span class="p">:</span> <span class="n">RiddleData</span><span class="p">)</span> <span class="o">-></span> <span class="n">RiddleData</span><span class="p">:</span>
|
||||
</span><span id="L-46"><a href="#L-46"><span class="linenos">46</span></a> <span class="nb">print</span><span class="p">(</span><span class="s2">"Text Process:"</span><span class="p">,</span> <span class="n">data</span><span class="o">.</span><span class="n">file_plain</span><span class="p">)</span>
|
||||
</span><span id="L-47"><a href="#L-47"><span class="linenos">47</span></a> <span class="k">return</span> <span class="n">data</span>
|
||||
</span><span id="L-48"><a href="#L-48"><span class="linenos">48</span></a>
|
||||
</span><span id="L-49"><a href="#L-49"><span class="linenos">49</span></a> <span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">riddle</span><span class="p">:</span> <span class="n">Riddle</span><span class="p">,</span> <span class="n">data</span><span class="p">:</span> <span class="n">RiddleData</span><span class="p">)</span> <span class="o">-></span> <span class="n">RiddleSolution</span><span class="p">:</span>
|
||||
</span><span id="L-50"><a href="#L-50"><span class="linenos">50</span></a>
|
||||
</span><span id="L-51"><a href="#L-51"><span class="linenos">51</span></a> <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">message</span><span class="p">()</span><span class="o">.</span><span class="n">id</span> <span class="o">==</span> <span class="s2">"test"</span><span class="p">:</span>
|
||||
</span><span id="L-52"><a href="#L-52"><span class="linenos">52</span></a> <span class="n">status</span> <span class="o">=</span> <span class="n">RiddleStatus</span><span class="p">()</span>
|
||||
</span><span id="L-53"><a href="#L-53"><span class="linenos">53</span></a> <span class="n">status</span><span class="o">.</span><span class="n">extract</span><span class="o">.</span><span class="n">required</span> <span class="o">=</span> <span class="kc">False</span>
|
||||
</span><span id="L-54"><a href="#L-54"><span class="linenos">54</span></a> <span class="bp">self</span><span class="o">.</span><span class="n">sub_riddle</span><span class="p">(</span><span class="n">riddle</span><span class="o">=</span><span class="n">Riddle</span><span class="p">(</span><span class="n">context</span><span class="o">=</span><span class="s2">"Haha"</span><span class="p">,</span> <span class="n">question</span><span class="o">=</span><span class="s2">"Blubber"</span><span class="p">),</span> <span class="n">status</span><span class="o">=</span><span class="n">status</span><span class="p">)</span>
|
||||
</span><span id="L-55"><a href="#L-55"><span class="linenos">55</span></a>
|
||||
</span><span id="L-56"><a href="#L-56"><span class="linenos">56</span></a> <span class="k">return</span> <span class="n">RiddleSolution</span><span class="p">(</span><span class="n">solution</span><span class="o">=</span><span class="s2">"Huii"</span><span class="p">,</span> <span class="n">explanation</span><span class="o">=</span><span class="s2">"Blubb"</span><span class="p">)</span>
|
||||
</span><span id="L-57"><a href="#L-57"><span class="linenos">57</span></a>
|
||||
</span><span id="L-58"><a href="#L-58"><span class="linenos">58</span></a>
|
||||
</span><span id="L-59"><a href="#L-59"><span class="linenos">59</span></a><span class="k">class</span> <span class="nc">MyGatekeeperAgent</span><span class="p">(</span><span class="n">GatekeeperAgent</span><span class="p">):</span>
|
||||
</span><span id="L-60"><a href="#L-60"><span class="linenos">60</span></a>
|
||||
</span><span id="L-61"><a href="#L-61"><span class="linenos">61</span></a> <span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">solution</span><span class="p">:</span> <span class="n">RiddleSolution</span><span class="p">,</span> <span class="n">riddle</span><span class="p">:</span> <span class="n">Riddle</span><span class="p">)</span> <span class="o">-></span> <span class="n">RiddleSolution</span><span class="p">:</span>
|
||||
</span><span id="L-62"><a href="#L-62"><span class="linenos">62</span></a> <span class="n">solution</span><span class="o">.</span><span class="n">accepted</span> <span class="o">=</span> <span class="kc">True</span>
|
||||
</span><span id="L-63"><a href="#L-63"><span class="linenos">63</span></a> <span class="n">solution</span><span class="o">.</span><span class="n">review</span> <span class="o">=</span> <span class="s2">"Ok"</span>
|
||||
</span><span id="L-64"><a href="#L-64"><span class="linenos">64</span></a>
|
||||
</span><span id="L-65"><a href="#L-65"><span class="linenos">65</span></a> <span class="k">return</span> <span class="n">solution</span>
|
||||
</span><span id="L-49"><a href="#L-49"><span class="linenos">49</span></a>
|
||||
</span><span id="L-50"><a href="#L-50"><span class="linenos">50</span></a><span class="k">class</span> <span class="nc">MySolveAgent</span><span class="p">(</span><span class="n">SolveAgent</span><span class="p">):</span>
|
||||
</span><span id="L-51"><a href="#L-51"><span class="linenos">51</span></a>
|
||||
</span><span id="L-52"><a href="#L-52"><span class="linenos">52</span></a> <span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">riddle</span><span class="p">:</span> <span class="n">Riddle</span><span class="p">,</span> <span class="n">data</span><span class="p">:</span> <span class="n">List</span><span class="p">[</span><span class="n">RiddleData</span><span class="p">])</span> <span class="o">-></span> <span class="n">RiddleSolution</span><span class="p">:</span>
|
||||
</span><span id="L-53"><a href="#L-53"><span class="linenos">53</span></a>
|
||||
</span><span id="L-54"><a href="#L-54"><span class="linenos">54</span></a> <span class="k">for</span> <span class="n">d</span> <span class="ow">in</span> <span class="n">data</span><span class="p">:</span>
|
||||
</span><span id="L-55"><a href="#L-55"><span class="linenos">55</span></a> <span class="nb">print</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">get_extracted</span><span class="p">(</span><span class="n">d</span><span class="p">))</span>
|
||||
</span><span id="L-56"><a href="#L-56"><span class="linenos">56</span></a>
|
||||
</span><span id="L-57"><a href="#L-57"><span class="linenos">57</span></a> <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">message</span><span class="p">()</span><span class="o">.</span><span class="n">id</span> <span class="o">==</span> <span class="s2">"test"</span><span class="p">:</span>
|
||||
</span><span id="L-58"><a href="#L-58"><span class="linenos">58</span></a> <span class="n">status</span> <span class="o">=</span> <span class="n">RiddleStatus</span><span class="p">()</span>
|
||||
</span><span id="L-59"><a href="#L-59"><span class="linenos">59</span></a> <span class="n">status</span><span class="o">.</span><span class="n">extract</span><span class="o">.</span><span class="n">required</span> <span class="o">=</span> <span class="kc">False</span>
|
||||
</span><span id="L-60"><a href="#L-60"><span class="linenos">60</span></a> <span class="bp">self</span><span class="o">.</span><span class="n">sub_riddle</span><span class="p">(</span><span class="n">riddle</span><span class="o">=</span><span class="n">Riddle</span><span class="p">(</span><span class="n">context</span><span class="o">=</span><span class="s2">"Haha"</span><span class="p">,</span> <span class="n">question</span><span class="o">=</span><span class="s2">"Blubber"</span><span class="p">),</span> <span class="n">status</span><span class="o">=</span><span class="n">status</span><span class="p">)</span>
|
||||
</span><span id="L-61"><a href="#L-61"><span class="linenos">61</span></a>
|
||||
</span><span id="L-62"><a href="#L-62"><span class="linenos">62</span></a> <span class="k">return</span> <span class="n">RiddleSolution</span><span class="p">(</span><span class="n">solution</span><span class="o">=</span><span class="s2">"Huii"</span><span class="p">,</span> <span class="n">explanation</span><span class="o">=</span><span class="s2">"Blubb"</span><span class="p">)</span>
|
||||
</span><span id="L-63"><a href="#L-63"><span class="linenos">63</span></a>
|
||||
</span><span id="L-64"><a href="#L-64"><span class="linenos">64</span></a>
|
||||
</span><span id="L-65"><a href="#L-65"><span class="linenos">65</span></a><span class="k">class</span> <span class="nc">MyGatekeeperAgent</span><span class="p">(</span><span class="n">GatekeeperAgent</span><span class="p">):</span>
|
||||
</span><span id="L-66"><a href="#L-66"><span class="linenos">66</span></a>
|
||||
</span><span id="L-67"><a href="#L-67"><span class="linenos">67</span></a><span class="n">AGENT_CLASSES</span> <span class="o">=</span> <span class="p">[</span>
|
||||
</span><span id="L-68"><a href="#L-68"><span class="linenos">68</span></a> <span class="n">MyExtractAudioAgent</span><span class="p">,</span> <span class="n">MyExtractImageAgent</span><span class="p">,</span> <span class="n">MyExtractTextAgent</span><span class="p">,</span>
|
||||
</span><span id="L-69"><a href="#L-69"><span class="linenos">69</span></a> <span class="n">MySolveAgent</span><span class="p">,</span>
|
||||
</span><span id="L-70"><a href="#L-70"><span class="linenos">70</span></a> <span class="n">MyGatekeeperAgent</span>
|
||||
</span><span id="L-71"><a href="#L-71"><span class="linenos">71</span></a><span class="p">]</span>
|
||||
</span><span id="L-67"><a href="#L-67"><span class="linenos">67</span></a> <span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">solution</span><span class="p">:</span> <span class="n">RiddleSolution</span><span class="p">,</span> <span class="n">riddle</span><span class="p">:</span> <span class="n">Riddle</span><span class="p">)</span> <span class="o">-></span> <span class="n">RiddleSolution</span><span class="p">:</span>
|
||||
</span><span id="L-68"><a href="#L-68"><span class="linenos">68</span></a> <span class="n">solution</span><span class="o">.</span><span class="n">accepted</span> <span class="o">=</span> <span class="kc">True</span>
|
||||
</span><span id="L-69"><a href="#L-69"><span class="linenos">69</span></a> <span class="n">solution</span><span class="o">.</span><span class="n">review</span> <span class="o">=</span> <span class="s2">"Ok"</span>
|
||||
</span><span id="L-70"><a href="#L-70"><span class="linenos">70</span></a>
|
||||
</span><span id="L-71"><a href="#L-71"><span class="linenos">71</span></a> <span class="k">return</span> <span class="n">solution</span>
|
||||
</span><span id="L-72"><a href="#L-72"><span class="linenos">72</span></a>
|
||||
</span><span id="L-73"><a href="#L-73"><span class="linenos">73</span></a><span class="n">AGENT_CLASSES</span> <span class="o">=</span> <span class="p">[</span>
|
||||
</span><span id="L-74"><a href="#L-74"><span class="linenos">74</span></a> <span class="n">MyExtractAudioAgent</span><span class="p">,</span> <span class="n">MyExtractImageAgent</span><span class="p">,</span> <span class="n">MyExtractTextAgent</span><span class="p">,</span>
|
||||
</span><span id="L-75"><a href="#L-75"><span class="linenos">75</span></a> <span class="n">MySolveAgent</span><span class="p">,</span>
|
||||
</span><span id="L-76"><a href="#L-76"><span class="linenos">76</span></a> <span class="n">MyGatekeeperAgent</span>
|
||||
</span><span id="L-77"><a href="#L-77"><span class="linenos">77</span></a><span class="p">]</span>
|
||||
</span></pre></div>
|
||||
|
||||
|
||||
@ -232,6 +238,7 @@
|
||||
<dd id="MyExtractAudioAgent.before_response" class="function"><a href="../agent/agent.html#BasicAgent.before_response">before_response</a></dd>
|
||||
<dd id="MyExtractAudioAgent.message" class="function"><a href="../agent/agent.html#BasicAgent.message">message</a></dd>
|
||||
<dd id="MyExtractAudioAgent.sub_riddle" class="function"><a href="../agent/agent.html#BasicAgent.sub_riddle">sub_riddle</a></dd>
|
||||
<dd id="MyExtractAudioAgent.get_extracted" class="function"><a href="../agent/agent.html#BasicAgent.get_extracted">get_extracted</a></dd>
|
||||
|
||||
</div>
|
||||
<div><dt><a href="../agent/agent.html#ExtractAudioAgent">ums.agent.agent.ExtractAudioAgent</a></dt>
|
||||
@ -240,6 +247,7 @@
|
||||
</div>
|
||||
<div><dt><a href="../agent/agent.html#ExtractAgent">ums.agent.agent.ExtractAgent</a></dt>
|
||||
<dd id="MyExtractAudioAgent.agent_capability" class="function"><a href="../agent/agent.html#ExtractAgent.agent_capability">agent_capability</a></dd>
|
||||
<dd id="MyExtractAudioAgent.store_extracted" class="function"><a href="../agent/agent.html#ExtractAgent.store_extracted">store_extracted</a></dd>
|
||||
|
||||
</div>
|
||||
</dl>
|
||||
@ -260,7 +268,10 @@
|
||||
</span><span id="MyExtractImageAgent-32"><a href="#MyExtractImageAgent-32"><span class="linenos">32</span></a>
|
||||
</span><span id="MyExtractImageAgent-33"><a href="#MyExtractImageAgent-33"><span class="linenos">33</span></a> <span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">data</span><span class="p">:</span> <span class="n">RiddleData</span><span class="p">)</span> <span class="o">-></span> <span class="n">RiddleData</span><span class="p">:</span>
|
||||
</span><span id="MyExtractImageAgent-34"><a href="#MyExtractImageAgent-34"><span class="linenos">34</span></a> <span class="nb">print</span><span class="p">(</span><span class="s2">"Image Process:"</span><span class="p">,</span> <span class="n">data</span><span class="o">.</span><span class="n">file_plain</span><span class="p">)</span>
|
||||
</span><span id="MyExtractImageAgent-35"><a href="#MyExtractImageAgent-35"><span class="linenos">35</span></a> <span class="k">return</span> <span class="n">data</span>
|
||||
</span><span id="MyExtractImageAgent-35"><a href="#MyExtractImageAgent-35"><span class="linenos">35</span></a>
|
||||
</span><span id="MyExtractImageAgent-36"><a href="#MyExtractImageAgent-36"><span class="linenos">36</span></a> <span class="n">extracted</span> <span class="o">=</span> <span class="n">ExtractedData</span><span class="p">(</span><span class="n">other</span><span class="o">=</span><span class="p">{</span><span class="s2">"info"</span><span class="p">:</span><span class="s2">"just a test"</span><span class="p">})</span>
|
||||
</span><span id="MyExtractImageAgent-37"><a href="#MyExtractImageAgent-37"><span class="linenos">37</span></a> <span class="n">data</span><span class="o">.</span><span class="n">file_extracted</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">store_extracted</span><span class="p">(</span><span class="n">data</span><span class="p">,</span> <span class="n">extracted</span><span class="p">)</span>
|
||||
</span><span id="MyExtractImageAgent-38"><a href="#MyExtractImageAgent-38"><span class="linenos">38</span></a> <span class="k">return</span> <span class="n">data</span>
|
||||
</span></pre></div>
|
||||
|
||||
|
||||
@ -281,7 +292,10 @@
|
||||
<a class="headerlink" href="#MyExtractImageAgent.handle"></a>
|
||||
<div class="pdoc-code codehilite"><pre><span></span><span id="MyExtractImageAgent.handle-33"><a href="#MyExtractImageAgent.handle-33"><span class="linenos">33</span></a> <span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">data</span><span class="p">:</span> <span class="n">RiddleData</span><span class="p">)</span> <span class="o">-></span> <span class="n">RiddleData</span><span class="p">:</span>
|
||||
</span><span id="MyExtractImageAgent.handle-34"><a href="#MyExtractImageAgent.handle-34"><span class="linenos">34</span></a> <span class="nb">print</span><span class="p">(</span><span class="s2">"Image Process:"</span><span class="p">,</span> <span class="n">data</span><span class="o">.</span><span class="n">file_plain</span><span class="p">)</span>
|
||||
</span><span id="MyExtractImageAgent.handle-35"><a href="#MyExtractImageAgent.handle-35"><span class="linenos">35</span></a> <span class="k">return</span> <span class="n">data</span>
|
||||
</span><span id="MyExtractImageAgent.handle-35"><a href="#MyExtractImageAgent.handle-35"><span class="linenos">35</span></a>
|
||||
</span><span id="MyExtractImageAgent.handle-36"><a href="#MyExtractImageAgent.handle-36"><span class="linenos">36</span></a> <span class="n">extracted</span> <span class="o">=</span> <span class="n">ExtractedData</span><span class="p">(</span><span class="n">other</span><span class="o">=</span><span class="p">{</span><span class="s2">"info"</span><span class="p">:</span><span class="s2">"just a test"</span><span class="p">})</span>
|
||||
</span><span id="MyExtractImageAgent.handle-37"><a href="#MyExtractImageAgent.handle-37"><span class="linenos">37</span></a> <span class="n">data</span><span class="o">.</span><span class="n">file_extracted</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">store_extracted</span><span class="p">(</span><span class="n">data</span><span class="p">,</span> <span class="n">extracted</span><span class="p">)</span>
|
||||
</span><span id="MyExtractImageAgent.handle-38"><a href="#MyExtractImageAgent.handle-38"><span class="linenos">38</span></a> <span class="k">return</span> <span class="n">data</span>
|
||||
</span></pre></div>
|
||||
|
||||
|
||||
@ -298,6 +312,7 @@
|
||||
<dd id="MyExtractImageAgent.before_response" class="function"><a href="../agent/agent.html#BasicAgent.before_response">before_response</a></dd>
|
||||
<dd id="MyExtractImageAgent.message" class="function"><a href="../agent/agent.html#BasicAgent.message">message</a></dd>
|
||||
<dd id="MyExtractImageAgent.sub_riddle" class="function"><a href="../agent/agent.html#BasicAgent.sub_riddle">sub_riddle</a></dd>
|
||||
<dd id="MyExtractImageAgent.get_extracted" class="function"><a href="../agent/agent.html#BasicAgent.get_extracted">get_extracted</a></dd>
|
||||
|
||||
</div>
|
||||
<div><dt><a href="../agent/agent.html#ExtractImageAgent">ums.agent.agent.ExtractImageAgent</a></dt>
|
||||
@ -306,6 +321,7 @@
|
||||
</div>
|
||||
<div><dt><a href="../agent/agent.html#ExtractAgent">ums.agent.agent.ExtractAgent</a></dt>
|
||||
<dd id="MyExtractImageAgent.agent_capability" class="function"><a href="../agent/agent.html#ExtractAgent.agent_capability">agent_capability</a></dd>
|
||||
<dd id="MyExtractImageAgent.store_extracted" class="function"><a href="../agent/agent.html#ExtractAgent.store_extracted">store_extracted</a></dd>
|
||||
|
||||
</div>
|
||||
</dl>
|
||||
@ -322,15 +338,15 @@
|
||||
|
||||
</div>
|
||||
<a class="headerlink" href="#MyExtractTextAgent"></a>
|
||||
<div class="pdoc-code codehilite"><pre><span></span><span id="MyExtractTextAgent-37"><a href="#MyExtractTextAgent-37"><span class="linenos">37</span></a><span class="k">class</span> <span class="nc">MyExtractTextAgent</span><span class="p">(</span><span class="n">ExtractTextAgent</span><span class="p">):</span>
|
||||
</span><span id="MyExtractTextAgent-38"><a href="#MyExtractTextAgent-38"><span class="linenos">38</span></a>
|
||||
</span><span id="MyExtractTextAgent-39"><a href="#MyExtractTextAgent-39"><span class="linenos">39</span></a> <span class="k">def</span> <span class="nf">before_response</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response</span><span class="p">:</span> <span class="n">AgentMessage</span><span class="p">,</span> <span class="n">send_it</span><span class="p">:</span> <span class="n">Callable</span><span class="p">[[],</span> <span class="kc">None</span><span class="p">])</span> <span class="o">-></span> <span class="nb">bool</span><span class="p">:</span>
|
||||
</span><span id="MyExtractTextAgent-40"><a href="#MyExtractTextAgent-40"><span class="linenos">40</span></a> <span class="nb">print</span><span class="p">(</span><span class="s2">"The response will be:"</span><span class="p">,</span> <span class="n">response</span><span class="p">)</span>
|
||||
</span><span id="MyExtractTextAgent-41"><a href="#MyExtractTextAgent-41"><span class="linenos">41</span></a> <span class="k">return</span> <span class="kc">True</span>
|
||||
</span><span id="MyExtractTextAgent-42"><a href="#MyExtractTextAgent-42"><span class="linenos">42</span></a>
|
||||
</span><span id="MyExtractTextAgent-43"><a href="#MyExtractTextAgent-43"><span class="linenos">43</span></a> <span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">data</span><span class="p">:</span> <span class="n">RiddleData</span><span class="p">)</span> <span class="o">-></span> <span class="n">RiddleData</span><span class="p">:</span>
|
||||
</span><span id="MyExtractTextAgent-44"><a href="#MyExtractTextAgent-44"><span class="linenos">44</span></a> <span class="nb">print</span><span class="p">(</span><span class="s2">"Text Process:"</span><span class="p">,</span> <span class="n">data</span><span class="o">.</span><span class="n">file_plain</span><span class="p">)</span>
|
||||
</span><span id="MyExtractTextAgent-45"><a href="#MyExtractTextAgent-45"><span class="linenos">45</span></a> <span class="k">return</span> <span class="n">data</span>
|
||||
<div class="pdoc-code codehilite"><pre><span></span><span id="MyExtractTextAgent-40"><a href="#MyExtractTextAgent-40"><span class="linenos">40</span></a><span class="k">class</span> <span class="nc">MyExtractTextAgent</span><span class="p">(</span><span class="n">ExtractTextAgent</span><span class="p">):</span>
|
||||
</span><span id="MyExtractTextAgent-41"><a href="#MyExtractTextAgent-41"><span class="linenos">41</span></a>
|
||||
</span><span id="MyExtractTextAgent-42"><a href="#MyExtractTextAgent-42"><span class="linenos">42</span></a> <span class="k">def</span> <span class="nf">before_response</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response</span><span class="p">:</span> <span class="n">AgentMessage</span><span class="p">,</span> <span class="n">send_it</span><span class="p">:</span> <span class="n">Callable</span><span class="p">[[],</span> <span class="kc">None</span><span class="p">])</span> <span class="o">-></span> <span class="nb">bool</span><span class="p">:</span>
|
||||
</span><span id="MyExtractTextAgent-43"><a href="#MyExtractTextAgent-43"><span class="linenos">43</span></a> <span class="nb">print</span><span class="p">(</span><span class="s2">"The response will be:"</span><span class="p">,</span> <span class="n">response</span><span class="p">)</span>
|
||||
</span><span id="MyExtractTextAgent-44"><a href="#MyExtractTextAgent-44"><span class="linenos">44</span></a> <span class="k">return</span> <span class="kc">True</span>
|
||||
</span><span id="MyExtractTextAgent-45"><a href="#MyExtractTextAgent-45"><span class="linenos">45</span></a>
|
||||
</span><span id="MyExtractTextAgent-46"><a href="#MyExtractTextAgent-46"><span class="linenos">46</span></a> <span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">data</span><span class="p">:</span> <span class="n">RiddleData</span><span class="p">)</span> <span class="o">-></span> <span class="n">RiddleData</span><span class="p">:</span>
|
||||
</span><span id="MyExtractTextAgent-47"><a href="#MyExtractTextAgent-47"><span class="linenos">47</span></a> <span class="nb">print</span><span class="p">(</span><span class="s2">"Text Process:"</span><span class="p">,</span> <span class="n">data</span><span class="o">.</span><span class="n">file_plain</span><span class="p">)</span>
|
||||
</span><span id="MyExtractTextAgent-48"><a href="#MyExtractTextAgent-48"><span class="linenos">48</span></a> <span class="k">return</span> <span class="n">data</span>
|
||||
</span></pre></div>
|
||||
|
||||
|
||||
@ -349,9 +365,9 @@
|
||||
|
||||
</div>
|
||||
<a class="headerlink" href="#MyExtractTextAgent.before_response"></a>
|
||||
<div class="pdoc-code codehilite"><pre><span></span><span id="MyExtractTextAgent.before_response-39"><a href="#MyExtractTextAgent.before_response-39"><span class="linenos">39</span></a> <span class="k">def</span> <span class="nf">before_response</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response</span><span class="p">:</span> <span class="n">AgentMessage</span><span class="p">,</span> <span class="n">send_it</span><span class="p">:</span> <span class="n">Callable</span><span class="p">[[],</span> <span class="kc">None</span><span class="p">])</span> <span class="o">-></span> <span class="nb">bool</span><span class="p">:</span>
|
||||
</span><span id="MyExtractTextAgent.before_response-40"><a href="#MyExtractTextAgent.before_response-40"><span class="linenos">40</span></a> <span class="nb">print</span><span class="p">(</span><span class="s2">"The response will be:"</span><span class="p">,</span> <span class="n">response</span><span class="p">)</span>
|
||||
</span><span id="MyExtractTextAgent.before_response-41"><a href="#MyExtractTextAgent.before_response-41"><span class="linenos">41</span></a> <span class="k">return</span> <span class="kc">True</span>
|
||||
<div class="pdoc-code codehilite"><pre><span></span><span id="MyExtractTextAgent.before_response-42"><a href="#MyExtractTextAgent.before_response-42"><span class="linenos">42</span></a> <span class="k">def</span> <span class="nf">before_response</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response</span><span class="p">:</span> <span class="n">AgentMessage</span><span class="p">,</span> <span class="n">send_it</span><span class="p">:</span> <span class="n">Callable</span><span class="p">[[],</span> <span class="kc">None</span><span class="p">])</span> <span class="o">-></span> <span class="nb">bool</span><span class="p">:</span>
|
||||
</span><span id="MyExtractTextAgent.before_response-43"><a href="#MyExtractTextAgent.before_response-43"><span class="linenos">43</span></a> <span class="nb">print</span><span class="p">(</span><span class="s2">"The response will be:"</span><span class="p">,</span> <span class="n">response</span><span class="p">)</span>
|
||||
</span><span id="MyExtractTextAgent.before_response-44"><a href="#MyExtractTextAgent.before_response-44"><span class="linenos">44</span></a> <span class="k">return</span> <span class="kc">True</span>
|
||||
</span></pre></div>
|
||||
|
||||
|
||||
@ -376,9 +392,9 @@ Thus, by overwriting this method, a response can be prevented.</p>
|
||||
|
||||
</div>
|
||||
<a class="headerlink" href="#MyExtractTextAgent.handle"></a>
|
||||
<div class="pdoc-code codehilite"><pre><span></span><span id="MyExtractTextAgent.handle-43"><a href="#MyExtractTextAgent.handle-43"><span class="linenos">43</span></a> <span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">data</span><span class="p">:</span> <span class="n">RiddleData</span><span class="p">)</span> <span class="o">-></span> <span class="n">RiddleData</span><span class="p">:</span>
|
||||
</span><span id="MyExtractTextAgent.handle-44"><a href="#MyExtractTextAgent.handle-44"><span class="linenos">44</span></a> <span class="nb">print</span><span class="p">(</span><span class="s2">"Text Process:"</span><span class="p">,</span> <span class="n">data</span><span class="o">.</span><span class="n">file_plain</span><span class="p">)</span>
|
||||
</span><span id="MyExtractTextAgent.handle-45"><a href="#MyExtractTextAgent.handle-45"><span class="linenos">45</span></a> <span class="k">return</span> <span class="n">data</span>
|
||||
<div class="pdoc-code codehilite"><pre><span></span><span id="MyExtractTextAgent.handle-46"><a href="#MyExtractTextAgent.handle-46"><span class="linenos">46</span></a> <span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">data</span><span class="p">:</span> <span class="n">RiddleData</span><span class="p">)</span> <span class="o">-></span> <span class="n">RiddleData</span><span class="p">:</span>
|
||||
</span><span id="MyExtractTextAgent.handle-47"><a href="#MyExtractTextAgent.handle-47"><span class="linenos">47</span></a> <span class="nb">print</span><span class="p">(</span><span class="s2">"Text Process:"</span><span class="p">,</span> <span class="n">data</span><span class="o">.</span><span class="n">file_plain</span><span class="p">)</span>
|
||||
</span><span id="MyExtractTextAgent.handle-48"><a href="#MyExtractTextAgent.handle-48"><span class="linenos">48</span></a> <span class="k">return</span> <span class="n">data</span>
|
||||
</span></pre></div>
|
||||
|
||||
|
||||
@ -394,6 +410,7 @@ Thus, by overwriting this method, a response can be prevented.</p>
|
||||
<dd id="MyExtractTextAgent.__init__" class="function"><a href="../agent/agent.html#BasicAgent.__init__">BasicAgent</a></dd>
|
||||
<dd id="MyExtractTextAgent.message" class="function"><a href="../agent/agent.html#BasicAgent.message">message</a></dd>
|
||||
<dd id="MyExtractTextAgent.sub_riddle" class="function"><a href="../agent/agent.html#BasicAgent.sub_riddle">sub_riddle</a></dd>
|
||||
<dd id="MyExtractTextAgent.get_extracted" class="function"><a href="../agent/agent.html#BasicAgent.get_extracted">get_extracted</a></dd>
|
||||
|
||||
</div>
|
||||
<div><dt><a href="../agent/agent.html#ExtractTextAgent">ums.agent.agent.ExtractTextAgent</a></dt>
|
||||
@ -402,6 +419,7 @@ Thus, by overwriting this method, a response can be prevented.</p>
|
||||
</div>
|
||||
<div><dt><a href="../agent/agent.html#ExtractAgent">ums.agent.agent.ExtractAgent</a></dt>
|
||||
<dd id="MyExtractTextAgent.agent_capability" class="function"><a href="../agent/agent.html#ExtractAgent.agent_capability">agent_capability</a></dd>
|
||||
<dd id="MyExtractTextAgent.store_extracted" class="function"><a href="../agent/agent.html#ExtractAgent.store_extracted">store_extracted</a></dd>
|
||||
|
||||
</div>
|
||||
</dl>
|
||||
@ -418,16 +436,19 @@ Thus, by overwriting this method, a response can be prevented.</p>
|
||||
|
||||
</div>
|
||||
<a class="headerlink" href="#MySolveAgent"></a>
|
||||
<div class="pdoc-code codehilite"><pre><span></span><span id="MySolveAgent-48"><a href="#MySolveAgent-48"><span class="linenos">48</span></a><span class="k">class</span> <span class="nc">MySolveAgent</span><span class="p">(</span><span class="n">SolveAgent</span><span class="p">):</span>
|
||||
</span><span id="MySolveAgent-49"><a href="#MySolveAgent-49"><span class="linenos">49</span></a>
|
||||
</span><span id="MySolveAgent-50"><a href="#MySolveAgent-50"><span class="linenos">50</span></a> <span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">riddle</span><span class="p">:</span> <span class="n">Riddle</span><span class="p">,</span> <span class="n">data</span><span class="p">:</span> <span class="n">RiddleData</span><span class="p">)</span> <span class="o">-></span> <span class="n">RiddleSolution</span><span class="p">:</span>
|
||||
</span><span id="MySolveAgent-51"><a href="#MySolveAgent-51"><span class="linenos">51</span></a>
|
||||
</span><span id="MySolveAgent-52"><a href="#MySolveAgent-52"><span class="linenos">52</span></a> <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">message</span><span class="p">()</span><span class="o">.</span><span class="n">id</span> <span class="o">==</span> <span class="s2">"test"</span><span class="p">:</span>
|
||||
</span><span id="MySolveAgent-53"><a href="#MySolveAgent-53"><span class="linenos">53</span></a> <span class="n">status</span> <span class="o">=</span> <span class="n">RiddleStatus</span><span class="p">()</span>
|
||||
</span><span id="MySolveAgent-54"><a href="#MySolveAgent-54"><span class="linenos">54</span></a> <span class="n">status</span><span class="o">.</span><span class="n">extract</span><span class="o">.</span><span class="n">required</span> <span class="o">=</span> <span class="kc">False</span>
|
||||
</span><span id="MySolveAgent-55"><a href="#MySolveAgent-55"><span class="linenos">55</span></a> <span class="bp">self</span><span class="o">.</span><span class="n">sub_riddle</span><span class="p">(</span><span class="n">riddle</span><span class="o">=</span><span class="n">Riddle</span><span class="p">(</span><span class="n">context</span><span class="o">=</span><span class="s2">"Haha"</span><span class="p">,</span> <span class="n">question</span><span class="o">=</span><span class="s2">"Blubber"</span><span class="p">),</span> <span class="n">status</span><span class="o">=</span><span class="n">status</span><span class="p">)</span>
|
||||
</span><span id="MySolveAgent-56"><a href="#MySolveAgent-56"><span class="linenos">56</span></a>
|
||||
</span><span id="MySolveAgent-57"><a href="#MySolveAgent-57"><span class="linenos">57</span></a> <span class="k">return</span> <span class="n">RiddleSolution</span><span class="p">(</span><span class="n">solution</span><span class="o">=</span><span class="s2">"Huii"</span><span class="p">,</span> <span class="n">explanation</span><span class="o">=</span><span class="s2">"Blubb"</span><span class="p">)</span>
|
||||
<div class="pdoc-code codehilite"><pre><span></span><span id="MySolveAgent-51"><a href="#MySolveAgent-51"><span class="linenos">51</span></a><span class="k">class</span> <span class="nc">MySolveAgent</span><span class="p">(</span><span class="n">SolveAgent</span><span class="p">):</span>
|
||||
</span><span id="MySolveAgent-52"><a href="#MySolveAgent-52"><span class="linenos">52</span></a>
|
||||
</span><span id="MySolveAgent-53"><a href="#MySolveAgent-53"><span class="linenos">53</span></a> <span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">riddle</span><span class="p">:</span> <span class="n">Riddle</span><span class="p">,</span> <span class="n">data</span><span class="p">:</span> <span class="n">List</span><span class="p">[</span><span class="n">RiddleData</span><span class="p">])</span> <span class="o">-></span> <span class="n">RiddleSolution</span><span class="p">:</span>
|
||||
</span><span id="MySolveAgent-54"><a href="#MySolveAgent-54"><span class="linenos">54</span></a>
|
||||
</span><span id="MySolveAgent-55"><a href="#MySolveAgent-55"><span class="linenos">55</span></a> <span class="k">for</span> <span class="n">d</span> <span class="ow">in</span> <span class="n">data</span><span class="p">:</span>
|
||||
</span><span id="MySolveAgent-56"><a href="#MySolveAgent-56"><span class="linenos">56</span></a> <span class="nb">print</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">get_extracted</span><span class="p">(</span><span class="n">d</span><span class="p">))</span>
|
||||
</span><span id="MySolveAgent-57"><a href="#MySolveAgent-57"><span class="linenos">57</span></a>
|
||||
</span><span id="MySolveAgent-58"><a href="#MySolveAgent-58"><span class="linenos">58</span></a> <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">message</span><span class="p">()</span><span class="o">.</span><span class="n">id</span> <span class="o">==</span> <span class="s2">"test"</span><span class="p">:</span>
|
||||
</span><span id="MySolveAgent-59"><a href="#MySolveAgent-59"><span class="linenos">59</span></a> <span class="n">status</span> <span class="o">=</span> <span class="n">RiddleStatus</span><span class="p">()</span>
|
||||
</span><span id="MySolveAgent-60"><a href="#MySolveAgent-60"><span class="linenos">60</span></a> <span class="n">status</span><span class="o">.</span><span class="n">extract</span><span class="o">.</span><span class="n">required</span> <span class="o">=</span> <span class="kc">False</span>
|
||||
</span><span id="MySolveAgent-61"><a href="#MySolveAgent-61"><span class="linenos">61</span></a> <span class="bp">self</span><span class="o">.</span><span class="n">sub_riddle</span><span class="p">(</span><span class="n">riddle</span><span class="o">=</span><span class="n">Riddle</span><span class="p">(</span><span class="n">context</span><span class="o">=</span><span class="s2">"Haha"</span><span class="p">,</span> <span class="n">question</span><span class="o">=</span><span class="s2">"Blubber"</span><span class="p">),</span> <span class="n">status</span><span class="o">=</span><span class="n">status</span><span class="p">)</span>
|
||||
</span><span id="MySolveAgent-62"><a href="#MySolveAgent-62"><span class="linenos">62</span></a>
|
||||
</span><span id="MySolveAgent-63"><a href="#MySolveAgent-63"><span class="linenos">63</span></a> <span class="k">return</span> <span class="n">RiddleSolution</span><span class="p">(</span><span class="n">solution</span><span class="o">=</span><span class="s2">"Huii"</span><span class="p">,</span> <span class="n">explanation</span><span class="o">=</span><span class="s2">"Blubb"</span><span class="p">)</span>
|
||||
</span></pre></div>
|
||||
|
||||
|
||||
@ -440,20 +461,23 @@ Thus, by overwriting this method, a response can be prevented.</p>
|
||||
<div class="attr function">
|
||||
|
||||
<span class="def">def</span>
|
||||
<span class="name">handle</span><span class="signature pdoc-code multiline">(<span class="param"> <span class="bp">self</span>,</span><span class="param"> <span class="n">riddle</span><span class="p">:</span> <span class="n"><a href="../utils/types.html#Riddle">ums.utils.types.Riddle</a></span>,</span><span class="param"> <span class="n">data</span><span class="p">:</span> <span class="n"><a href="../utils/types.html#RiddleData">ums.utils.types.RiddleData</a></span></span><span class="return-annotation">) -> <span class="n"><a href="../utils/types.html#RiddleSolution">ums.utils.types.RiddleSolution</a></span>:</span></span>
|
||||
<span class="name">handle</span><span class="signature pdoc-code multiline">(<span class="param"> <span class="bp">self</span>,</span><span class="param"> <span class="n">riddle</span><span class="p">:</span> <span class="n"><a href="../utils/types.html#Riddle">ums.utils.types.Riddle</a></span>,</span><span class="param"> <span class="n">data</span><span class="p">:</span> <span class="n">List</span><span class="p">[</span><span class="n"><a href="../utils/types.html#RiddleData">ums.utils.types.RiddleData</a></span><span class="p">]</span></span><span class="return-annotation">) -> <span class="n"><a href="../utils/types.html#RiddleSolution">ums.utils.types.RiddleSolution</a></span>:</span></span>
|
||||
|
||||
<label class="view-source-button" for="MySolveAgent.handle-view-source"><span>View Source</span></label>
|
||||
|
||||
</div>
|
||||
<a class="headerlink" href="#MySolveAgent.handle"></a>
|
||||
<div class="pdoc-code codehilite"><pre><span></span><span id="MySolveAgent.handle-50"><a href="#MySolveAgent.handle-50"><span class="linenos">50</span></a> <span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">riddle</span><span class="p">:</span> <span class="n">Riddle</span><span class="p">,</span> <span class="n">data</span><span class="p">:</span> <span class="n">RiddleData</span><span class="p">)</span> <span class="o">-></span> <span class="n">RiddleSolution</span><span class="p">:</span>
|
||||
</span><span id="MySolveAgent.handle-51"><a href="#MySolveAgent.handle-51"><span class="linenos">51</span></a>
|
||||
</span><span id="MySolveAgent.handle-52"><a href="#MySolveAgent.handle-52"><span class="linenos">52</span></a> <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">message</span><span class="p">()</span><span class="o">.</span><span class="n">id</span> <span class="o">==</span> <span class="s2">"test"</span><span class="p">:</span>
|
||||
</span><span id="MySolveAgent.handle-53"><a href="#MySolveAgent.handle-53"><span class="linenos">53</span></a> <span class="n">status</span> <span class="o">=</span> <span class="n">RiddleStatus</span><span class="p">()</span>
|
||||
</span><span id="MySolveAgent.handle-54"><a href="#MySolveAgent.handle-54"><span class="linenos">54</span></a> <span class="n">status</span><span class="o">.</span><span class="n">extract</span><span class="o">.</span><span class="n">required</span> <span class="o">=</span> <span class="kc">False</span>
|
||||
</span><span id="MySolveAgent.handle-55"><a href="#MySolveAgent.handle-55"><span class="linenos">55</span></a> <span class="bp">self</span><span class="o">.</span><span class="n">sub_riddle</span><span class="p">(</span><span class="n">riddle</span><span class="o">=</span><span class="n">Riddle</span><span class="p">(</span><span class="n">context</span><span class="o">=</span><span class="s2">"Haha"</span><span class="p">,</span> <span class="n">question</span><span class="o">=</span><span class="s2">"Blubber"</span><span class="p">),</span> <span class="n">status</span><span class="o">=</span><span class="n">status</span><span class="p">)</span>
|
||||
</span><span id="MySolveAgent.handle-56"><a href="#MySolveAgent.handle-56"><span class="linenos">56</span></a>
|
||||
</span><span id="MySolveAgent.handle-57"><a href="#MySolveAgent.handle-57"><span class="linenos">57</span></a> <span class="k">return</span> <span class="n">RiddleSolution</span><span class="p">(</span><span class="n">solution</span><span class="o">=</span><span class="s2">"Huii"</span><span class="p">,</span> <span class="n">explanation</span><span class="o">=</span><span class="s2">"Blubb"</span><span class="p">)</span>
|
||||
<div class="pdoc-code codehilite"><pre><span></span><span id="MySolveAgent.handle-53"><a href="#MySolveAgent.handle-53"><span class="linenos">53</span></a> <span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">riddle</span><span class="p">:</span> <span class="n">Riddle</span><span class="p">,</span> <span class="n">data</span><span class="p">:</span> <span class="n">List</span><span class="p">[</span><span class="n">RiddleData</span><span class="p">])</span> <span class="o">-></span> <span class="n">RiddleSolution</span><span class="p">:</span>
|
||||
</span><span id="MySolveAgent.handle-54"><a href="#MySolveAgent.handle-54"><span class="linenos">54</span></a>
|
||||
</span><span id="MySolveAgent.handle-55"><a href="#MySolveAgent.handle-55"><span class="linenos">55</span></a> <span class="k">for</span> <span class="n">d</span> <span class="ow">in</span> <span class="n">data</span><span class="p">:</span>
|
||||
</span><span id="MySolveAgent.handle-56"><a href="#MySolveAgent.handle-56"><span class="linenos">56</span></a> <span class="nb">print</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">get_extracted</span><span class="p">(</span><span class="n">d</span><span class="p">))</span>
|
||||
</span><span id="MySolveAgent.handle-57"><a href="#MySolveAgent.handle-57"><span class="linenos">57</span></a>
|
||||
</span><span id="MySolveAgent.handle-58"><a href="#MySolveAgent.handle-58"><span class="linenos">58</span></a> <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">message</span><span class="p">()</span><span class="o">.</span><span class="n">id</span> <span class="o">==</span> <span class="s2">"test"</span><span class="p">:</span>
|
||||
</span><span id="MySolveAgent.handle-59"><a href="#MySolveAgent.handle-59"><span class="linenos">59</span></a> <span class="n">status</span> <span class="o">=</span> <span class="n">RiddleStatus</span><span class="p">()</span>
|
||||
</span><span id="MySolveAgent.handle-60"><a href="#MySolveAgent.handle-60"><span class="linenos">60</span></a> <span class="n">status</span><span class="o">.</span><span class="n">extract</span><span class="o">.</span><span class="n">required</span> <span class="o">=</span> <span class="kc">False</span>
|
||||
</span><span id="MySolveAgent.handle-61"><a href="#MySolveAgent.handle-61"><span class="linenos">61</span></a> <span class="bp">self</span><span class="o">.</span><span class="n">sub_riddle</span><span class="p">(</span><span class="n">riddle</span><span class="o">=</span><span class="n">Riddle</span><span class="p">(</span><span class="n">context</span><span class="o">=</span><span class="s2">"Haha"</span><span class="p">,</span> <span class="n">question</span><span class="o">=</span><span class="s2">"Blubber"</span><span class="p">),</span> <span class="n">status</span><span class="o">=</span><span class="n">status</span><span class="p">)</span>
|
||||
</span><span id="MySolveAgent.handle-62"><a href="#MySolveAgent.handle-62"><span class="linenos">62</span></a>
|
||||
</span><span id="MySolveAgent.handle-63"><a href="#MySolveAgent.handle-63"><span class="linenos">63</span></a> <span class="k">return</span> <span class="n">RiddleSolution</span><span class="p">(</span><span class="n">solution</span><span class="o">=</span><span class="s2">"Huii"</span><span class="p">,</span> <span class="n">explanation</span><span class="o">=</span><span class="s2">"Blubb"</span><span class="p">)</span>
|
||||
</span></pre></div>
|
||||
|
||||
|
||||
@ -470,6 +494,7 @@ Thus, by overwriting this method, a response can be prevented.</p>
|
||||
<dd id="MySolveAgent.before_response" class="function"><a href="../agent/agent.html#BasicAgent.before_response">before_response</a></dd>
|
||||
<dd id="MySolveAgent.message" class="function"><a href="../agent/agent.html#BasicAgent.message">message</a></dd>
|
||||
<dd id="MySolveAgent.sub_riddle" class="function"><a href="../agent/agent.html#BasicAgent.sub_riddle">sub_riddle</a></dd>
|
||||
<dd id="MySolveAgent.get_extracted" class="function"><a href="../agent/agent.html#BasicAgent.get_extracted">get_extracted</a></dd>
|
||||
|
||||
</div>
|
||||
<div><dt><a href="../agent/agent.html#SolveAgent">ums.agent.agent.SolveAgent</a></dt>
|
||||
@ -490,13 +515,13 @@ Thus, by overwriting this method, a response can be prevented.</p>
|
||||
|
||||
</div>
|
||||
<a class="headerlink" href="#MyGatekeeperAgent"></a>
|
||||
<div class="pdoc-code codehilite"><pre><span></span><span id="MyGatekeeperAgent-60"><a href="#MyGatekeeperAgent-60"><span class="linenos">60</span></a><span class="k">class</span> <span class="nc">MyGatekeeperAgent</span><span class="p">(</span><span class="n">GatekeeperAgent</span><span class="p">):</span>
|
||||
</span><span id="MyGatekeeperAgent-61"><a href="#MyGatekeeperAgent-61"><span class="linenos">61</span></a>
|
||||
</span><span id="MyGatekeeperAgent-62"><a href="#MyGatekeeperAgent-62"><span class="linenos">62</span></a> <span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">solution</span><span class="p">:</span> <span class="n">RiddleSolution</span><span class="p">,</span> <span class="n">riddle</span><span class="p">:</span> <span class="n">Riddle</span><span class="p">)</span> <span class="o">-></span> <span class="n">RiddleSolution</span><span class="p">:</span>
|
||||
</span><span id="MyGatekeeperAgent-63"><a href="#MyGatekeeperAgent-63"><span class="linenos">63</span></a> <span class="n">solution</span><span class="o">.</span><span class="n">accepted</span> <span class="o">=</span> <span class="kc">True</span>
|
||||
</span><span id="MyGatekeeperAgent-64"><a href="#MyGatekeeperAgent-64"><span class="linenos">64</span></a> <span class="n">solution</span><span class="o">.</span><span class="n">review</span> <span class="o">=</span> <span class="s2">"Ok"</span>
|
||||
</span><span id="MyGatekeeperAgent-65"><a href="#MyGatekeeperAgent-65"><span class="linenos">65</span></a>
|
||||
</span><span id="MyGatekeeperAgent-66"><a href="#MyGatekeeperAgent-66"><span class="linenos">66</span></a> <span class="k">return</span> <span class="n">solution</span>
|
||||
<div class="pdoc-code codehilite"><pre><span></span><span id="MyGatekeeperAgent-66"><a href="#MyGatekeeperAgent-66"><span class="linenos">66</span></a><span class="k">class</span> <span class="nc">MyGatekeeperAgent</span><span class="p">(</span><span class="n">GatekeeperAgent</span><span class="p">):</span>
|
||||
</span><span id="MyGatekeeperAgent-67"><a href="#MyGatekeeperAgent-67"><span class="linenos">67</span></a>
|
||||
</span><span id="MyGatekeeperAgent-68"><a href="#MyGatekeeperAgent-68"><span class="linenos">68</span></a> <span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">solution</span><span class="p">:</span> <span class="n">RiddleSolution</span><span class="p">,</span> <span class="n">riddle</span><span class="p">:</span> <span class="n">Riddle</span><span class="p">)</span> <span class="o">-></span> <span class="n">RiddleSolution</span><span class="p">:</span>
|
||||
</span><span id="MyGatekeeperAgent-69"><a href="#MyGatekeeperAgent-69"><span class="linenos">69</span></a> <span class="n">solution</span><span class="o">.</span><span class="n">accepted</span> <span class="o">=</span> <span class="kc">True</span>
|
||||
</span><span id="MyGatekeeperAgent-70"><a href="#MyGatekeeperAgent-70"><span class="linenos">70</span></a> <span class="n">solution</span><span class="o">.</span><span class="n">review</span> <span class="o">=</span> <span class="s2">"Ok"</span>
|
||||
</span><span id="MyGatekeeperAgent-71"><a href="#MyGatekeeperAgent-71"><span class="linenos">71</span></a>
|
||||
</span><span id="MyGatekeeperAgent-72"><a href="#MyGatekeeperAgent-72"><span class="linenos">72</span></a> <span class="k">return</span> <span class="n">solution</span>
|
||||
</span></pre></div>
|
||||
|
||||
|
||||
@ -515,11 +540,11 @@ Thus, by overwriting this method, a response can be prevented.</p>
|
||||
|
||||
</div>
|
||||
<a class="headerlink" href="#MyGatekeeperAgent.handle"></a>
|
||||
<div class="pdoc-code codehilite"><pre><span></span><span id="MyGatekeeperAgent.handle-62"><a href="#MyGatekeeperAgent.handle-62"><span class="linenos">62</span></a> <span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">solution</span><span class="p">:</span> <span class="n">RiddleSolution</span><span class="p">,</span> <span class="n">riddle</span><span class="p">:</span> <span class="n">Riddle</span><span class="p">)</span> <span class="o">-></span> <span class="n">RiddleSolution</span><span class="p">:</span>
|
||||
</span><span id="MyGatekeeperAgent.handle-63"><a href="#MyGatekeeperAgent.handle-63"><span class="linenos">63</span></a> <span class="n">solution</span><span class="o">.</span><span class="n">accepted</span> <span class="o">=</span> <span class="kc">True</span>
|
||||
</span><span id="MyGatekeeperAgent.handle-64"><a href="#MyGatekeeperAgent.handle-64"><span class="linenos">64</span></a> <span class="n">solution</span><span class="o">.</span><span class="n">review</span> <span class="o">=</span> <span class="s2">"Ok"</span>
|
||||
</span><span id="MyGatekeeperAgent.handle-65"><a href="#MyGatekeeperAgent.handle-65"><span class="linenos">65</span></a>
|
||||
</span><span id="MyGatekeeperAgent.handle-66"><a href="#MyGatekeeperAgent.handle-66"><span class="linenos">66</span></a> <span class="k">return</span> <span class="n">solution</span>
|
||||
<div class="pdoc-code codehilite"><pre><span></span><span id="MyGatekeeperAgent.handle-68"><a href="#MyGatekeeperAgent.handle-68"><span class="linenos">68</span></a> <span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">solution</span><span class="p">:</span> <span class="n">RiddleSolution</span><span class="p">,</span> <span class="n">riddle</span><span class="p">:</span> <span class="n">Riddle</span><span class="p">)</span> <span class="o">-></span> <span class="n">RiddleSolution</span><span class="p">:</span>
|
||||
</span><span id="MyGatekeeperAgent.handle-69"><a href="#MyGatekeeperAgent.handle-69"><span class="linenos">69</span></a> <span class="n">solution</span><span class="o">.</span><span class="n">accepted</span> <span class="o">=</span> <span class="kc">True</span>
|
||||
</span><span id="MyGatekeeperAgent.handle-70"><a href="#MyGatekeeperAgent.handle-70"><span class="linenos">70</span></a> <span class="n">solution</span><span class="o">.</span><span class="n">review</span> <span class="o">=</span> <span class="s2">"Ok"</span>
|
||||
</span><span id="MyGatekeeperAgent.handle-71"><a href="#MyGatekeeperAgent.handle-71"><span class="linenos">71</span></a>
|
||||
</span><span id="MyGatekeeperAgent.handle-72"><a href="#MyGatekeeperAgent.handle-72"><span class="linenos">72</span></a> <span class="k">return</span> <span class="n">solution</span>
|
||||
</span></pre></div>
|
||||
|
||||
|
||||
@ -536,6 +561,7 @@ Thus, by overwriting this method, a response can be prevented.</p>
|
||||
<dd id="MyGatekeeperAgent.before_response" class="function"><a href="../agent/agent.html#BasicAgent.before_response">before_response</a></dd>
|
||||
<dd id="MyGatekeeperAgent.message" class="function"><a href="../agent/agent.html#BasicAgent.message">message</a></dd>
|
||||
<dd id="MyGatekeeperAgent.sub_riddle" class="function"><a href="../agent/agent.html#BasicAgent.sub_riddle">sub_riddle</a></dd>
|
||||
<dd id="MyGatekeeperAgent.get_extracted" class="function"><a href="../agent/agent.html#BasicAgent.get_extracted">get_extracted</a></dd>
|
||||
|
||||
</div>
|
||||
<div><dt><a href="../agent/agent.html#GatekeeperAgent">ums.agent.agent.GatekeeperAgent</a></dt>
|
||||
|
@ -104,6 +104,11 @@
|
||||
</span><span id="L-38"><a href="#L-38"><span class="linenos">38</span></a><span class="kn">from</span> <span class="nn">ums.utils.request</span> <span class="kn">import</span> <span class="n">ManagementRequest</span>
|
||||
</span><span id="L-39"><a href="#L-39"><span class="linenos">39</span></a>
|
||||
</span><span id="L-40"><a href="#L-40"><span class="linenos">40</span></a><span class="kn">from</span> <span class="nn">ums.utils.functions</span> <span class="kn">import</span> <span class="n">list_shared_data</span><span class="p">,</span> <span class="n">list_shared_schema</span>
|
||||
</span><span id="L-41"><a href="#L-41"><span class="linenos">41</span></a>
|
||||
</span><span id="L-42"><a href="#L-42"><span class="linenos">42</span></a><span class="kn">from</span> <span class="nn">ums.utils.schema</span> <span class="kn">import</span> <span class="p">(</span>
|
||||
</span><span id="L-43"><a href="#L-43"><span class="linenos">43</span></a> <span class="n">ExtractionSchema</span><span class="p">,</span>
|
||||
</span><span id="L-44"><a href="#L-44"><span class="linenos">44</span></a> <span class="n">ExtractedData</span>
|
||||
</span><span id="L-45"><a href="#L-45"><span class="linenos">45</span></a><span class="p">)</span>
|
||||
</span></pre></div>
|
||||
|
||||
|
||||
|
@ -38,6 +38,48 @@
|
||||
</ul>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
<a class="class" href="#ExtractedContent">ExtractedContent</a>
|
||||
<ul class="memberlist">
|
||||
<li>
|
||||
<a class="variable" href="#ExtractedContent.type">type</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="variable" href="#ExtractedContent.content">content</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
<a class="class" href="#ExtractedPositions">ExtractedPositions</a>
|
||||
<ul class="memberlist">
|
||||
<li>
|
||||
<a class="variable" href="#ExtractedPositions.type">type</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="variable" href="#ExtractedPositions.position">position</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="variable" href="#ExtractedPositions.description">description</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
<a class="class" href="#ExtractedData">ExtractedData</a>
|
||||
<ul class="memberlist">
|
||||
<li>
|
||||
<a class="variable" href="#ExtractedData.contents">contents</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="variable" href="#ExtractedData.positions">positions</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="variable" href="#ExtractedData.other">other</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
@ -57,6 +99,8 @@
|
||||
<div class="docstring"><p>This represents the basic types used for representing extracted information from the data.
|
||||
The types are implemented using <a href="https://docs.pydantic.dev/">pydantic</a>.
|
||||
It provides validation, allow JSON serialization and works well with <a href="https://fastapi.tiangolo.com/">FastAPI</a> which is used internally for the http request between the agents and the management.</p>
|
||||
|
||||
<p><strong>This is work in progress!</strong></p>
|
||||
</div>
|
||||
|
||||
<input id="mod-schema-view-source" class="view-source-toggle-state" type="checkbox" aria-hidden="true" tabindex="-1">
|
||||
@ -78,18 +122,75 @@ It provides validation, allow JSON serialization and works well with <a href="ht
|
||||
</span><span id="L-13"><a href="#L-13"><span class="linenos">13</span></a><span class="sd"> The types are implemented using [pydantic](https://docs.pydantic.dev/).</span>
|
||||
</span><span id="L-14"><a href="#L-14"><span class="linenos">14</span></a><span class="sd"> It provides validation, allow JSON serialization and works well with [FastAPI](https://fastapi.tiangolo.com/) which is used internally for the http request between the agents and the management.</span>
|
||||
</span><span id="L-15"><a href="#L-15"><span class="linenos">15</span></a>
|
||||
</span><span id="L-16"><a href="#L-16"><span class="linenos">16</span></a><span class="sd">"""</span>
|
||||
</span><span id="L-17"><a href="#L-17"><span class="linenos">17</span></a>
|
||||
</span><span id="L-18"><a href="#L-18"><span class="linenos">18</span></a><span class="kn">from</span> <span class="nn">enum</span> <span class="kn">import</span> <span class="n">Enum</span>
|
||||
</span><span id="L-19"><a href="#L-19"><span class="linenos">19</span></a>
|
||||
</span><span id="L-20"><a href="#L-20"><span class="linenos">20</span></a><span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">List</span><span class="p">,</span> <span class="n">Any</span>
|
||||
</span><span id="L-21"><a href="#L-21"><span class="linenos">21</span></a>
|
||||
</span><span id="L-22"><a href="#L-22"><span class="linenos">22</span></a><span class="kn">from</span> <span class="nn">pydantic</span> <span class="kn">import</span> <span class="n">BaseModel</span>
|
||||
</span><span id="L-23"><a href="#L-23"><span class="linenos">23</span></a>
|
||||
</span><span id="L-24"><a href="#L-24"><span class="linenos">24</span></a><span class="k">class</span> <span class="nc">ExtractionSchema</span><span class="p">(</span><span class="n">BaseModel</span><span class="p">):</span>
|
||||
</span><span id="L-25"><a href="#L-25"><span class="linenos">25</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="L-26"><a href="#L-26"><span class="linenos">26</span></a><span class="sd"> This is the basic class used as superclass for all extracted information from data items.</span>
|
||||
</span><span id="L-27"><a href="#L-27"><span class="linenos">27</span></a><span class="sd"> """</span>
|
||||
</span><span id="L-16"><a href="#L-16"><span class="linenos">16</span></a><span class="sd"> **This is work in progress!**</span>
|
||||
</span><span id="L-17"><a href="#L-17"><span class="linenos">17</span></a><span class="sd">"""</span>
|
||||
</span><span id="L-18"><a href="#L-18"><span class="linenos">18</span></a>
|
||||
</span><span id="L-19"><a href="#L-19"><span class="linenos">19</span></a><span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">List</span><span class="p">,</span> <span class="n">Any</span><span class="p">,</span> <span class="n">Dict</span>
|
||||
</span><span id="L-20"><a href="#L-20"><span class="linenos">20</span></a>
|
||||
</span><span id="L-21"><a href="#L-21"><span class="linenos">21</span></a><span class="kn">from</span> <span class="nn">pydantic</span> <span class="kn">import</span> <span class="n">BaseModel</span>
|
||||
</span><span id="L-22"><a href="#L-22"><span class="linenos">22</span></a>
|
||||
</span><span id="L-23"><a href="#L-23"><span class="linenos">23</span></a><span class="k">class</span> <span class="nc">ExtractionSchema</span><span class="p">(</span><span class="n">BaseModel</span><span class="p">):</span>
|
||||
</span><span id="L-24"><a href="#L-24"><span class="linenos">24</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="L-25"><a href="#L-25"><span class="linenos">25</span></a><span class="sd"> This is the basic class used as superclass for all extracted information from data items.</span>
|
||||
</span><span id="L-26"><a href="#L-26"><span class="linenos">26</span></a>
|
||||
</span><span id="L-27"><a href="#L-27"><span class="linenos">27</span></a><span class="sd"> For all the `ExtractionSchema` is is required that the data can be serialized to json. </span>
|
||||
</span><span id="L-28"><a href="#L-28"><span class="linenos">28</span></a><span class="sd"> Thus, mostly only default data types like `int, str, bool, list, dict, tuple` also including `ExtractionSchema` and `RiddleInformation` can be used here!</span>
|
||||
</span><span id="L-29"><a href="#L-29"><span class="linenos">29</span></a><span class="sd"> """</span>
|
||||
</span><span id="L-30"><a href="#L-30"><span class="linenos">30</span></a>
|
||||
</span><span id="L-31"><a href="#L-31"><span class="linenos">31</span></a><span class="k">class</span> <span class="nc">ExtractedContent</span><span class="p">(</span><span class="n">ExtractionSchema</span><span class="p">):</span>
|
||||
</span><span id="L-32"><a href="#L-32"><span class="linenos">32</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="L-33"><a href="#L-33"><span class="linenos">33</span></a><span class="sd"> An extracted content item.</span>
|
||||
</span><span id="L-34"><a href="#L-34"><span class="linenos">34</span></a><span class="sd"> """</span>
|
||||
</span><span id="L-35"><a href="#L-35"><span class="linenos">35</span></a>
|
||||
</span><span id="L-36"><a href="#L-36"><span class="linenos">36</span></a> <span class="nb">type</span> <span class="p">:</span> <span class="nb">str</span>
|
||||
</span><span id="L-37"><a href="#L-37"><span class="linenos">37</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="L-38"><a href="#L-38"><span class="linenos">38</span></a><span class="sd"> The type, as a string, the actual string will depend on the extraction agent.</span>
|
||||
</span><span id="L-39"><a href="#L-39"><span class="linenos">39</span></a><span class="sd"> """</span>
|
||||
</span><span id="L-40"><a href="#L-40"><span class="linenos">40</span></a>
|
||||
</span><span id="L-41"><a href="#L-41"><span class="linenos">41</span></a> <span class="n">content</span> <span class="p">:</span> <span class="nb">str</span> <span class="o">|</span> <span class="n">Any</span>
|
||||
</span><span id="L-42"><a href="#L-42"><span class="linenos">42</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="L-43"><a href="#L-43"><span class="linenos">43</span></a><span class="sd"> The extracted content</span>
|
||||
</span><span id="L-44"><a href="#L-44"><span class="linenos">44</span></a><span class="sd"> """</span>
|
||||
</span><span id="L-45"><a href="#L-45"><span class="linenos">45</span></a>
|
||||
</span><span id="L-46"><a href="#L-46"><span class="linenos">46</span></a><span class="k">class</span> <span class="nc">ExtractedPositions</span><span class="p">(</span><span class="n">ExtractionSchema</span><span class="p">):</span>
|
||||
</span><span id="L-47"><a href="#L-47"><span class="linenos">47</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="L-48"><a href="#L-48"><span class="linenos">48</span></a><span class="sd"> A position (like time, coordinates, ...) where something was extracted (each position should belong to a content item).</span>
|
||||
</span><span id="L-49"><a href="#L-49"><span class="linenos">49</span></a><span class="sd"> """</span>
|
||||
</span><span id="L-50"><a href="#L-50"><span class="linenos">50</span></a>
|
||||
</span><span id="L-51"><a href="#L-51"><span class="linenos">51</span></a> <span class="nb">type</span> <span class="p">:</span> <span class="nb">str</span>
|
||||
</span><span id="L-52"><a href="#L-52"><span class="linenos">52</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="L-53"><a href="#L-53"><span class="linenos">53</span></a><span class="sd"> The type, as a string, the actual string will depend on the extraction agent.</span>
|
||||
</span><span id="L-54"><a href="#L-54"><span class="linenos">54</span></a><span class="sd"> """</span>
|
||||
</span><span id="L-55"><a href="#L-55"><span class="linenos">55</span></a>
|
||||
</span><span id="L-56"><a href="#L-56"><span class="linenos">56</span></a> <span class="n">position</span> <span class="p">:</span> <span class="nb">str</span> <span class="o">|</span> <span class="nb">int</span> <span class="o">|</span> <span class="n">Any</span>
|
||||
</span><span id="L-57"><a href="#L-57"><span class="linenos">57</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="L-58"><a href="#L-58"><span class="linenos">58</span></a><span class="sd"> The position, will also depend on the extraction agent.</span>
|
||||
</span><span id="L-59"><a href="#L-59"><span class="linenos">59</span></a><span class="sd"> """</span>
|
||||
</span><span id="L-60"><a href="#L-60"><span class="linenos">60</span></a>
|
||||
</span><span id="L-61"><a href="#L-61"><span class="linenos">61</span></a> <span class="n">description</span> <span class="p">:</span> <span class="nb">str</span> <span class="o">|</span> <span class="n">Any</span> <span class="o">=</span> <span class="kc">None</span>
|
||||
</span><span id="L-62"><a href="#L-62"><span class="linenos">62</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="L-63"><a href="#L-63"><span class="linenos">63</span></a><span class="sd"> An optional description for more details.</span>
|
||||
</span><span id="L-64"><a href="#L-64"><span class="linenos">64</span></a><span class="sd"> """</span>
|
||||
</span><span id="L-65"><a href="#L-65"><span class="linenos">65</span></a>
|
||||
</span><span id="L-66"><a href="#L-66"><span class="linenos">66</span></a><span class="k">class</span> <span class="nc">ExtractedData</span><span class="p">(</span><span class="n">ExtractionSchema</span><span class="p">):</span>
|
||||
</span><span id="L-67"><a href="#L-67"><span class="linenos">67</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="L-68"><a href="#L-68"><span class="linenos">68</span></a><span class="sd"> Contains the extracted items from a data file.</span>
|
||||
</span><span id="L-69"><a href="#L-69"><span class="linenos">69</span></a><span class="sd"> """</span>
|
||||
</span><span id="L-70"><a href="#L-70"><span class="linenos">70</span></a>
|
||||
</span><span id="L-71"><a href="#L-71"><span class="linenos">71</span></a> <span class="n">contents</span> <span class="p">:</span> <span class="n">List</span><span class="p">[</span><span class="n">ExtractedContent</span><span class="p">]</span> <span class="o">=</span> <span class="p">[]</span>
|
||||
</span><span id="L-72"><a href="#L-72"><span class="linenos">72</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="L-73"><a href="#L-73"><span class="linenos">73</span></a><span class="sd"> The extracted contents (i.e., transcriptions etc.), each item here should belong a position item at the same index.</span>
|
||||
</span><span id="L-74"><a href="#L-74"><span class="linenos">74</span></a><span class="sd"> """</span>
|
||||
</span><span id="L-75"><a href="#L-75"><span class="linenos">75</span></a>
|
||||
</span><span id="L-76"><a href="#L-76"><span class="linenos">76</span></a> <span class="n">positions</span> <span class="p">:</span> <span class="n">List</span><span class="p">[</span><span class="n">ExtractedPositions</span><span class="p">]</span> <span class="o">=</span> <span class="p">[]</span>
|
||||
</span><span id="L-77"><a href="#L-77"><span class="linenos">77</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="L-78"><a href="#L-78"><span class="linenos">78</span></a><span class="sd"> The positions of extracted contents, each item here should belong a content item at the same index.</span>
|
||||
</span><span id="L-79"><a href="#L-79"><span class="linenos">79</span></a><span class="sd"> """</span>
|
||||
</span><span id="L-80"><a href="#L-80"><span class="linenos">80</span></a>
|
||||
</span><span id="L-81"><a href="#L-81"><span class="linenos">81</span></a> <span class="n">other</span> <span class="p">:</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">]</span> <span class="o">=</span> <span class="p">{}</span>
|
||||
</span><span id="L-82"><a href="#L-82"><span class="linenos">82</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="L-83"><a href="#L-83"><span class="linenos">83</span></a><span class="sd"> Possibly more data. Use a keywords (depending on agent) and store the data there.</span>
|
||||
</span><span id="L-84"><a href="#L-84"><span class="linenos">84</span></a><span class="sd"> """</span>
|
||||
</span></pre></div>
|
||||
|
||||
|
||||
@ -105,14 +206,20 @@ It provides validation, allow JSON serialization and works well with <a href="ht
|
||||
|
||||
</div>
|
||||
<a class="headerlink" href="#ExtractionSchema"></a>
|
||||
<div class="pdoc-code codehilite"><pre><span></span><span id="ExtractionSchema-25"><a href="#ExtractionSchema-25"><span class="linenos">25</span></a><span class="k">class</span> <span class="nc">ExtractionSchema</span><span class="p">(</span><span class="n">BaseModel</span><span class="p">):</span>
|
||||
</span><span id="ExtractionSchema-26"><a href="#ExtractionSchema-26"><span class="linenos">26</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="ExtractionSchema-27"><a href="#ExtractionSchema-27"><span class="linenos">27</span></a><span class="sd"> This is the basic class used as superclass for all extracted information from data items.</span>
|
||||
</span><span id="ExtractionSchema-28"><a href="#ExtractionSchema-28"><span class="linenos">28</span></a><span class="sd"> """</span>
|
||||
<div class="pdoc-code codehilite"><pre><span></span><span id="ExtractionSchema-24"><a href="#ExtractionSchema-24"><span class="linenos">24</span></a><span class="k">class</span> <span class="nc">ExtractionSchema</span><span class="p">(</span><span class="n">BaseModel</span><span class="p">):</span>
|
||||
</span><span id="ExtractionSchema-25"><a href="#ExtractionSchema-25"><span class="linenos">25</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="ExtractionSchema-26"><a href="#ExtractionSchema-26"><span class="linenos">26</span></a><span class="sd"> This is the basic class used as superclass for all extracted information from data items.</span>
|
||||
</span><span id="ExtractionSchema-27"><a href="#ExtractionSchema-27"><span class="linenos">27</span></a>
|
||||
</span><span id="ExtractionSchema-28"><a href="#ExtractionSchema-28"><span class="linenos">28</span></a><span class="sd"> For all the `ExtractionSchema` is is required that the data can be serialized to json. </span>
|
||||
</span><span id="ExtractionSchema-29"><a href="#ExtractionSchema-29"><span class="linenos">29</span></a><span class="sd"> Thus, mostly only default data types like `int, str, bool, list, dict, tuple` also including `ExtractionSchema` and `RiddleInformation` can be used here!</span>
|
||||
</span><span id="ExtractionSchema-30"><a href="#ExtractionSchema-30"><span class="linenos">30</span></a><span class="sd"> """</span>
|
||||
</span></pre></div>
|
||||
|
||||
|
||||
<div class="docstring"><p>This is the basic class used as superclass for all extracted information from data items.</p>
|
||||
|
||||
<p>For all the <code><a href="#ExtractionSchema">ExtractionSchema</a></code> is is required that the data can be serialized to json.
|
||||
Thus, mostly only default data types like <code>int, str, bool, list, dict, tuple</code> also including <code><a href="#ExtractionSchema">ExtractionSchema</a></code> and <code>RiddleInformation</code> can be used here!</p>
|
||||
</div>
|
||||
|
||||
|
||||
@ -151,6 +258,321 @@ It provides validation, allow JSON serialization and works well with <a href="ht
|
||||
</dl>
|
||||
</div>
|
||||
</section>
|
||||
<section id="ExtractedContent">
|
||||
<input id="ExtractedContent-view-source" class="view-source-toggle-state" type="checkbox" aria-hidden="true" tabindex="-1">
|
||||
<div class="attr class">
|
||||
|
||||
<span class="def">class</span>
|
||||
<span class="name">ExtractedContent</span><wbr>(<span class="base"><a href="#ExtractionSchema">ExtractionSchema</a></span>):
|
||||
|
||||
<label class="view-source-button" for="ExtractedContent-view-source"><span>View Source</span></label>
|
||||
|
||||
</div>
|
||||
<a class="headerlink" href="#ExtractedContent"></a>
|
||||
<div class="pdoc-code codehilite"><pre><span></span><span id="ExtractedContent-32"><a href="#ExtractedContent-32"><span class="linenos">32</span></a><span class="k">class</span> <span class="nc">ExtractedContent</span><span class="p">(</span><span class="n">ExtractionSchema</span><span class="p">):</span>
|
||||
</span><span id="ExtractedContent-33"><a href="#ExtractedContent-33"><span class="linenos">33</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="ExtractedContent-34"><a href="#ExtractedContent-34"><span class="linenos">34</span></a><span class="sd"> An extracted content item.</span>
|
||||
</span><span id="ExtractedContent-35"><a href="#ExtractedContent-35"><span class="linenos">35</span></a><span class="sd"> """</span>
|
||||
</span><span id="ExtractedContent-36"><a href="#ExtractedContent-36"><span class="linenos">36</span></a>
|
||||
</span><span id="ExtractedContent-37"><a href="#ExtractedContent-37"><span class="linenos">37</span></a> <span class="nb">type</span> <span class="p">:</span> <span class="nb">str</span>
|
||||
</span><span id="ExtractedContent-38"><a href="#ExtractedContent-38"><span class="linenos">38</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="ExtractedContent-39"><a href="#ExtractedContent-39"><span class="linenos">39</span></a><span class="sd"> The type, as a string, the actual string will depend on the extraction agent.</span>
|
||||
</span><span id="ExtractedContent-40"><a href="#ExtractedContent-40"><span class="linenos">40</span></a><span class="sd"> """</span>
|
||||
</span><span id="ExtractedContent-41"><a href="#ExtractedContent-41"><span class="linenos">41</span></a>
|
||||
</span><span id="ExtractedContent-42"><a href="#ExtractedContent-42"><span class="linenos">42</span></a> <span class="n">content</span> <span class="p">:</span> <span class="nb">str</span> <span class="o">|</span> <span class="n">Any</span>
|
||||
</span><span id="ExtractedContent-43"><a href="#ExtractedContent-43"><span class="linenos">43</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="ExtractedContent-44"><a href="#ExtractedContent-44"><span class="linenos">44</span></a><span class="sd"> The extracted content</span>
|
||||
</span><span id="ExtractedContent-45"><a href="#ExtractedContent-45"><span class="linenos">45</span></a><span class="sd"> """</span>
|
||||
</span></pre></div>
|
||||
|
||||
|
||||
<div class="docstring"><p>An extracted content item.</p>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="ExtractedContent.type" class="classattr">
|
||||
<div class="attr variable">
|
||||
<span class="name">type</span><span class="annotation">: str</span>
|
||||
|
||||
|
||||
</div>
|
||||
<a class="headerlink" href="#ExtractedContent.type"></a>
|
||||
|
||||
<div class="docstring"><p>The type, as a string, the actual string will depend on the extraction agent.</p>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<div id="ExtractedContent.content" class="classattr">
|
||||
<div class="attr variable">
|
||||
<span class="name">content</span><span class="annotation">: str | typing.Any</span>
|
||||
|
||||
|
||||
</div>
|
||||
<a class="headerlink" href="#ExtractedContent.content"></a>
|
||||
|
||||
<div class="docstring"><p>The extracted content</p>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<div class="inherited">
|
||||
<h5>Inherited Members</h5>
|
||||
<dl>
|
||||
<div><dt>pydantic.main.BaseModel</dt>
|
||||
<dd id="ExtractedContent.__init__" class="function">BaseModel</dd>
|
||||
<dd id="ExtractedContent.model_extra" class="variable">model_extra</dd>
|
||||
<dd id="ExtractedContent.model_fields_set" class="variable">model_fields_set</dd>
|
||||
<dd id="ExtractedContent.model_construct" class="function">model_construct</dd>
|
||||
<dd id="ExtractedContent.model_copy" class="function">model_copy</dd>
|
||||
<dd id="ExtractedContent.model_dump" class="function">model_dump</dd>
|
||||
<dd id="ExtractedContent.model_dump_json" class="function">model_dump_json</dd>
|
||||
<dd id="ExtractedContent.model_json_schema" class="function">model_json_schema</dd>
|
||||
<dd id="ExtractedContent.model_parametrized_name" class="function">model_parametrized_name</dd>
|
||||
<dd id="ExtractedContent.model_post_init" class="function">model_post_init</dd>
|
||||
<dd id="ExtractedContent.model_rebuild" class="function">model_rebuild</dd>
|
||||
<dd id="ExtractedContent.model_validate" class="function">model_validate</dd>
|
||||
<dd id="ExtractedContent.model_validate_json" class="function">model_validate_json</dd>
|
||||
<dd id="ExtractedContent.model_validate_strings" class="function">model_validate_strings</dd>
|
||||
<dd id="ExtractedContent.dict" class="function">dict</dd>
|
||||
<dd id="ExtractedContent.json" class="function">json</dd>
|
||||
<dd id="ExtractedContent.parse_obj" class="function">parse_obj</dd>
|
||||
<dd id="ExtractedContent.parse_raw" class="function">parse_raw</dd>
|
||||
<dd id="ExtractedContent.parse_file" class="function">parse_file</dd>
|
||||
<dd id="ExtractedContent.from_orm" class="function">from_orm</dd>
|
||||
<dd id="ExtractedContent.construct" class="function">construct</dd>
|
||||
<dd id="ExtractedContent.copy" class="function">copy</dd>
|
||||
<dd id="ExtractedContent.schema" class="function">schema</dd>
|
||||
<dd id="ExtractedContent.schema_json" class="function">schema_json</dd>
|
||||
<dd id="ExtractedContent.validate" class="function">validate</dd>
|
||||
<dd id="ExtractedContent.update_forward_refs" class="function">update_forward_refs</dd>
|
||||
|
||||
</div>
|
||||
</dl>
|
||||
</div>
|
||||
</section>
|
||||
<section id="ExtractedPositions">
|
||||
<input id="ExtractedPositions-view-source" class="view-source-toggle-state" type="checkbox" aria-hidden="true" tabindex="-1">
|
||||
<div class="attr class">
|
||||
|
||||
<span class="def">class</span>
|
||||
<span class="name">ExtractedPositions</span><wbr>(<span class="base"><a href="#ExtractionSchema">ExtractionSchema</a></span>):
|
||||
|
||||
<label class="view-source-button" for="ExtractedPositions-view-source"><span>View Source</span></label>
|
||||
|
||||
</div>
|
||||
<a class="headerlink" href="#ExtractedPositions"></a>
|
||||
<div class="pdoc-code codehilite"><pre><span></span><span id="ExtractedPositions-47"><a href="#ExtractedPositions-47"><span class="linenos">47</span></a><span class="k">class</span> <span class="nc">ExtractedPositions</span><span class="p">(</span><span class="n">ExtractionSchema</span><span class="p">):</span>
|
||||
</span><span id="ExtractedPositions-48"><a href="#ExtractedPositions-48"><span class="linenos">48</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="ExtractedPositions-49"><a href="#ExtractedPositions-49"><span class="linenos">49</span></a><span class="sd"> A position (like time, coordinates, ...) where something was extracted (each position should belong to a content item).</span>
|
||||
</span><span id="ExtractedPositions-50"><a href="#ExtractedPositions-50"><span class="linenos">50</span></a><span class="sd"> """</span>
|
||||
</span><span id="ExtractedPositions-51"><a href="#ExtractedPositions-51"><span class="linenos">51</span></a>
|
||||
</span><span id="ExtractedPositions-52"><a href="#ExtractedPositions-52"><span class="linenos">52</span></a> <span class="nb">type</span> <span class="p">:</span> <span class="nb">str</span>
|
||||
</span><span id="ExtractedPositions-53"><a href="#ExtractedPositions-53"><span class="linenos">53</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="ExtractedPositions-54"><a href="#ExtractedPositions-54"><span class="linenos">54</span></a><span class="sd"> The type, as a string, the actual string will depend on the extraction agent.</span>
|
||||
</span><span id="ExtractedPositions-55"><a href="#ExtractedPositions-55"><span class="linenos">55</span></a><span class="sd"> """</span>
|
||||
</span><span id="ExtractedPositions-56"><a href="#ExtractedPositions-56"><span class="linenos">56</span></a>
|
||||
</span><span id="ExtractedPositions-57"><a href="#ExtractedPositions-57"><span class="linenos">57</span></a> <span class="n">position</span> <span class="p">:</span> <span class="nb">str</span> <span class="o">|</span> <span class="nb">int</span> <span class="o">|</span> <span class="n">Any</span>
|
||||
</span><span id="ExtractedPositions-58"><a href="#ExtractedPositions-58"><span class="linenos">58</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="ExtractedPositions-59"><a href="#ExtractedPositions-59"><span class="linenos">59</span></a><span class="sd"> The position, will also depend on the extraction agent.</span>
|
||||
</span><span id="ExtractedPositions-60"><a href="#ExtractedPositions-60"><span class="linenos">60</span></a><span class="sd"> """</span>
|
||||
</span><span id="ExtractedPositions-61"><a href="#ExtractedPositions-61"><span class="linenos">61</span></a>
|
||||
</span><span id="ExtractedPositions-62"><a href="#ExtractedPositions-62"><span class="linenos">62</span></a> <span class="n">description</span> <span class="p">:</span> <span class="nb">str</span> <span class="o">|</span> <span class="n">Any</span> <span class="o">=</span> <span class="kc">None</span>
|
||||
</span><span id="ExtractedPositions-63"><a href="#ExtractedPositions-63"><span class="linenos">63</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="ExtractedPositions-64"><a href="#ExtractedPositions-64"><span class="linenos">64</span></a><span class="sd"> An optional description for more details.</span>
|
||||
</span><span id="ExtractedPositions-65"><a href="#ExtractedPositions-65"><span class="linenos">65</span></a><span class="sd"> """</span>
|
||||
</span></pre></div>
|
||||
|
||||
|
||||
<div class="docstring"><p>A position (like time, coordinates, ...) where something was extracted (each position should belong to a content item).</p>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="ExtractedPositions.type" class="classattr">
|
||||
<div class="attr variable">
|
||||
<span class="name">type</span><span class="annotation">: str</span>
|
||||
|
||||
|
||||
</div>
|
||||
<a class="headerlink" href="#ExtractedPositions.type"></a>
|
||||
|
||||
<div class="docstring"><p>The type, as a string, the actual string will depend on the extraction agent.</p>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<div id="ExtractedPositions.position" class="classattr">
|
||||
<div class="attr variable">
|
||||
<span class="name">position</span><span class="annotation">: str | int | typing.Any</span>
|
||||
|
||||
|
||||
</div>
|
||||
<a class="headerlink" href="#ExtractedPositions.position"></a>
|
||||
|
||||
<div class="docstring"><p>The position, will also depend on the extraction agent.</p>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<div id="ExtractedPositions.description" class="classattr">
|
||||
<div class="attr variable">
|
||||
<span class="name">description</span><span class="annotation">: str | typing.Any</span>
|
||||
|
||||
|
||||
</div>
|
||||
<a class="headerlink" href="#ExtractedPositions.description"></a>
|
||||
|
||||
<div class="docstring"><p>An optional description for more details.</p>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<div class="inherited">
|
||||
<h5>Inherited Members</h5>
|
||||
<dl>
|
||||
<div><dt>pydantic.main.BaseModel</dt>
|
||||
<dd id="ExtractedPositions.__init__" class="function">BaseModel</dd>
|
||||
<dd id="ExtractedPositions.model_extra" class="variable">model_extra</dd>
|
||||
<dd id="ExtractedPositions.model_fields_set" class="variable">model_fields_set</dd>
|
||||
<dd id="ExtractedPositions.model_construct" class="function">model_construct</dd>
|
||||
<dd id="ExtractedPositions.model_copy" class="function">model_copy</dd>
|
||||
<dd id="ExtractedPositions.model_dump" class="function">model_dump</dd>
|
||||
<dd id="ExtractedPositions.model_dump_json" class="function">model_dump_json</dd>
|
||||
<dd id="ExtractedPositions.model_json_schema" class="function">model_json_schema</dd>
|
||||
<dd id="ExtractedPositions.model_parametrized_name" class="function">model_parametrized_name</dd>
|
||||
<dd id="ExtractedPositions.model_post_init" class="function">model_post_init</dd>
|
||||
<dd id="ExtractedPositions.model_rebuild" class="function">model_rebuild</dd>
|
||||
<dd id="ExtractedPositions.model_validate" class="function">model_validate</dd>
|
||||
<dd id="ExtractedPositions.model_validate_json" class="function">model_validate_json</dd>
|
||||
<dd id="ExtractedPositions.model_validate_strings" class="function">model_validate_strings</dd>
|
||||
<dd id="ExtractedPositions.dict" class="function">dict</dd>
|
||||
<dd id="ExtractedPositions.json" class="function">json</dd>
|
||||
<dd id="ExtractedPositions.parse_obj" class="function">parse_obj</dd>
|
||||
<dd id="ExtractedPositions.parse_raw" class="function">parse_raw</dd>
|
||||
<dd id="ExtractedPositions.parse_file" class="function">parse_file</dd>
|
||||
<dd id="ExtractedPositions.from_orm" class="function">from_orm</dd>
|
||||
<dd id="ExtractedPositions.construct" class="function">construct</dd>
|
||||
<dd id="ExtractedPositions.copy" class="function">copy</dd>
|
||||
<dd id="ExtractedPositions.schema" class="function">schema</dd>
|
||||
<dd id="ExtractedPositions.schema_json" class="function">schema_json</dd>
|
||||
<dd id="ExtractedPositions.validate" class="function">validate</dd>
|
||||
<dd id="ExtractedPositions.update_forward_refs" class="function">update_forward_refs</dd>
|
||||
|
||||
</div>
|
||||
</dl>
|
||||
</div>
|
||||
</section>
|
||||
<section id="ExtractedData">
|
||||
<input id="ExtractedData-view-source" class="view-source-toggle-state" type="checkbox" aria-hidden="true" tabindex="-1">
|
||||
<div class="attr class">
|
||||
|
||||
<span class="def">class</span>
|
||||
<span class="name">ExtractedData</span><wbr>(<span class="base"><a href="#ExtractionSchema">ExtractionSchema</a></span>):
|
||||
|
||||
<label class="view-source-button" for="ExtractedData-view-source"><span>View Source</span></label>
|
||||
|
||||
</div>
|
||||
<a class="headerlink" href="#ExtractedData"></a>
|
||||
<div class="pdoc-code codehilite"><pre><span></span><span id="ExtractedData-67"><a href="#ExtractedData-67"><span class="linenos">67</span></a><span class="k">class</span> <span class="nc">ExtractedData</span><span class="p">(</span><span class="n">ExtractionSchema</span><span class="p">):</span>
|
||||
</span><span id="ExtractedData-68"><a href="#ExtractedData-68"><span class="linenos">68</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="ExtractedData-69"><a href="#ExtractedData-69"><span class="linenos">69</span></a><span class="sd"> Contains the extracted items from a data file.</span>
|
||||
</span><span id="ExtractedData-70"><a href="#ExtractedData-70"><span class="linenos">70</span></a><span class="sd"> """</span>
|
||||
</span><span id="ExtractedData-71"><a href="#ExtractedData-71"><span class="linenos">71</span></a>
|
||||
</span><span id="ExtractedData-72"><a href="#ExtractedData-72"><span class="linenos">72</span></a> <span class="n">contents</span> <span class="p">:</span> <span class="n">List</span><span class="p">[</span><span class="n">ExtractedContent</span><span class="p">]</span> <span class="o">=</span> <span class="p">[]</span>
|
||||
</span><span id="ExtractedData-73"><a href="#ExtractedData-73"><span class="linenos">73</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="ExtractedData-74"><a href="#ExtractedData-74"><span class="linenos">74</span></a><span class="sd"> The extracted contents (i.e., transcriptions etc.), each item here should belong a position item at the same index.</span>
|
||||
</span><span id="ExtractedData-75"><a href="#ExtractedData-75"><span class="linenos">75</span></a><span class="sd"> """</span>
|
||||
</span><span id="ExtractedData-76"><a href="#ExtractedData-76"><span class="linenos">76</span></a>
|
||||
</span><span id="ExtractedData-77"><a href="#ExtractedData-77"><span class="linenos">77</span></a> <span class="n">positions</span> <span class="p">:</span> <span class="n">List</span><span class="p">[</span><span class="n">ExtractedPositions</span><span class="p">]</span> <span class="o">=</span> <span class="p">[]</span>
|
||||
</span><span id="ExtractedData-78"><a href="#ExtractedData-78"><span class="linenos">78</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="ExtractedData-79"><a href="#ExtractedData-79"><span class="linenos">79</span></a><span class="sd"> The positions of extracted contents, each item here should belong a content item at the same index.</span>
|
||||
</span><span id="ExtractedData-80"><a href="#ExtractedData-80"><span class="linenos">80</span></a><span class="sd"> """</span>
|
||||
</span><span id="ExtractedData-81"><a href="#ExtractedData-81"><span class="linenos">81</span></a>
|
||||
</span><span id="ExtractedData-82"><a href="#ExtractedData-82"><span class="linenos">82</span></a> <span class="n">other</span> <span class="p">:</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">]</span> <span class="o">=</span> <span class="p">{}</span>
|
||||
</span><span id="ExtractedData-83"><a href="#ExtractedData-83"><span class="linenos">83</span></a><span class="w"> </span><span class="sd">"""</span>
|
||||
</span><span id="ExtractedData-84"><a href="#ExtractedData-84"><span class="linenos">84</span></a><span class="sd"> Possibly more data. Use a keywords (depending on agent) and store the data there.</span>
|
||||
</span><span id="ExtractedData-85"><a href="#ExtractedData-85"><span class="linenos">85</span></a><span class="sd"> """</span>
|
||||
</span></pre></div>
|
||||
|
||||
|
||||
<div class="docstring"><p>Contains the extracted items from a data file.</p>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="ExtractedData.contents" class="classattr">
|
||||
<div class="attr variable">
|
||||
<span class="name">contents</span><span class="annotation">: List[<a href="#ExtractedContent">ExtractedContent</a>]</span>
|
||||
|
||||
|
||||
</div>
|
||||
<a class="headerlink" href="#ExtractedData.contents"></a>
|
||||
|
||||
<div class="docstring"><p>The extracted contents (i.e., transcriptions etc.), each item here should belong a position item at the same index.</p>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<div id="ExtractedData.positions" class="classattr">
|
||||
<div class="attr variable">
|
||||
<span class="name">positions</span><span class="annotation">: List[<a href="#ExtractedPositions">ExtractedPositions</a>]</span>
|
||||
|
||||
|
||||
</div>
|
||||
<a class="headerlink" href="#ExtractedData.positions"></a>
|
||||
|
||||
<div class="docstring"><p>The positions of extracted contents, each item here should belong a content item at the same index.</p>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<div id="ExtractedData.other" class="classattr">
|
||||
<div class="attr variable">
|
||||
<span class="name">other</span><span class="annotation">: Dict[str, Any]</span>
|
||||
|
||||
|
||||
</div>
|
||||
<a class="headerlink" href="#ExtractedData.other"></a>
|
||||
|
||||
<div class="docstring"><p>Possibly more data. Use a keywords (depending on agent) and store the data there.</p>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<div class="inherited">
|
||||
<h5>Inherited Members</h5>
|
||||
<dl>
|
||||
<div><dt>pydantic.main.BaseModel</dt>
|
||||
<dd id="ExtractedData.__init__" class="function">BaseModel</dd>
|
||||
<dd id="ExtractedData.model_extra" class="variable">model_extra</dd>
|
||||
<dd id="ExtractedData.model_fields_set" class="variable">model_fields_set</dd>
|
||||
<dd id="ExtractedData.model_construct" class="function">model_construct</dd>
|
||||
<dd id="ExtractedData.model_copy" class="function">model_copy</dd>
|
||||
<dd id="ExtractedData.model_dump" class="function">model_dump</dd>
|
||||
<dd id="ExtractedData.model_dump_json" class="function">model_dump_json</dd>
|
||||
<dd id="ExtractedData.model_json_schema" class="function">model_json_schema</dd>
|
||||
<dd id="ExtractedData.model_parametrized_name" class="function">model_parametrized_name</dd>
|
||||
<dd id="ExtractedData.model_post_init" class="function">model_post_init</dd>
|
||||
<dd id="ExtractedData.model_rebuild" class="function">model_rebuild</dd>
|
||||
<dd id="ExtractedData.model_validate" class="function">model_validate</dd>
|
||||
<dd id="ExtractedData.model_validate_json" class="function">model_validate_json</dd>
|
||||
<dd id="ExtractedData.model_validate_strings" class="function">model_validate_strings</dd>
|
||||
<dd id="ExtractedData.dict" class="function">dict</dd>
|
||||
<dd id="ExtractedData.json" class="function">json</dd>
|
||||
<dd id="ExtractedData.parse_obj" class="function">parse_obj</dd>
|
||||
<dd id="ExtractedData.parse_raw" class="function">parse_raw</dd>
|
||||
<dd id="ExtractedData.parse_file" class="function">parse_file</dd>
|
||||
<dd id="ExtractedData.from_orm" class="function">from_orm</dd>
|
||||
<dd id="ExtractedData.construct" class="function">construct</dd>
|
||||
<dd id="ExtractedData.copy" class="function">copy</dd>
|
||||
<dd id="ExtractedData.schema" class="function">schema</dd>
|
||||
<dd id="ExtractedData.schema_json" class="function">schema_json</dd>
|
||||
<dd id="ExtractedData.validate" class="function">validate</dd>
|
||||
<dd id="ExtractedData.update_forward_refs" class="function">update_forward_refs</dd>
|
||||
|
||||
</div>
|
||||
</dl>
|
||||
</div>
|
||||
</section>
|
||||
</main>
|
||||
<script>
|
||||
function escapeHTML(html) {
|
||||
|
@ -949,7 +949,7 @@ is set to <code>'allow'</code>.</li>
|
||||
</div>
|
||||
<div id="RiddleData.file_plain" class="classattr">
|
||||
<div class="attr variable">
|
||||
<span class="name">file_plain</span><span class="annotation">: Annotated[str, AfterValidator(func=<function _check_data_file at 0x101d893a0>), WrapValidator(func=<function _ignore_file_missing at 0x1020ad800>, json_schema_input_type=PydanticUndefined)]</span>
|
||||
<span class="name">file_plain</span><span class="annotation">: Annotated[str, AfterValidator(func=<function _check_data_file at 0x1029c23e0>), WrapValidator(func=<function _ignore_file_missing at 0x102a73100>, json_schema_input_type=PydanticUndefined)]</span>
|
||||
|
||||
|
||||
</div>
|
||||
@ -965,7 +965,7 @@ The file must exist.</p>
|
||||
</div>
|
||||
<div id="RiddleData.file_extracted" class="classattr">
|
||||
<div class="attr variable">
|
||||
<span class="name">file_extracted</span><span class="annotation">: Optional[Annotated[str, AfterValidator(func=<function _check_data_file at 0x101d893a0>), WrapValidator(func=<function _ignore_file_missing at 0x1020ad800>, json_schema_input_type=PydanticUndefined)]]</span>
|
||||
<span class="name">file_extracted</span><span class="annotation">: Optional[Annotated[str, AfterValidator(func=<function _check_data_file at 0x1029c23e0>), WrapValidator(func=<function _ignore_file_missing at 0x102a73100>, json_schema_input_type=PydanticUndefined)]]</span>
|
||||
|
||||
|
||||
</div>
|
||||
|
Loading…
x
Reference in New Issue
Block a user