File size: 3,136 Bytes
240e068
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7e09916
 
 
 
 
 
240e068
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7e09916
 
 
 
 
 
240e068
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
# ----------------------------------------------------------------------------
#
#  Welcome to Baml! To use this generated code, please run the following:
#
#  $ pip install baml
#
# ----------------------------------------------------------------------------

# This file was generated by BAML: please do not edit it. Instead, edit the
# BAML files and re-generate this code using: baml-cli generate
# baml-cli is available with the baml package.

import typing
import typing_extensions


from . import stream_types, types
from .runtime import DoNotUseDirectlyCallManager, BamlCallOptions

class LlmResponseParser:
    __options: DoNotUseDirectlyCallManager

    def __init__(self, options: DoNotUseDirectlyCallManager):
        self.__options = options

    def AssessDetections(
        self, llm_response: str, baml_options: BamlCallOptions = {},
    ) -> typing.List["types.DetectionVerdict"]:
        __result__ = self.__options.merge_options(baml_options).parse_response(function_name="AssessDetections", llm_response=llm_response, mode="request")
        return typing.cast(typing.List["types.DetectionVerdict"], __result__)

    def PlanMission(
        self, llm_response: str, baml_options: BamlCallOptions = {},
    ) -> types.MissionPlan:
        __result__ = self.__options.merge_options(baml_options).parse_response(function_name="PlanMission", llm_response=llm_response, mode="request")
        return typing.cast(types.MissionPlan, __result__)

    def SuggestMissions(
        self, llm_response: str, baml_options: BamlCallOptions = {},
    ) -> typing.List["types.MissionSuggestion"]:
        __result__ = self.__options.merge_options(baml_options).parse_response(function_name="SuggestMissions", llm_response=llm_response, mode="request")
        return typing.cast(typing.List["types.MissionSuggestion"], __result__)

    

class LlmStreamParser:
    __options: DoNotUseDirectlyCallManager

    def __init__(self, options: DoNotUseDirectlyCallManager):
        self.__options = options

    def AssessDetections(
        self, llm_response: str, baml_options: BamlCallOptions = {},
    ) -> typing.List["stream_types.DetectionVerdict"]:
        __result__ = self.__options.merge_options(baml_options).parse_response(function_name="AssessDetections", llm_response=llm_response, mode="stream")
        return typing.cast(typing.List["stream_types.DetectionVerdict"], __result__)

    def PlanMission(
        self, llm_response: str, baml_options: BamlCallOptions = {},
    ) -> stream_types.MissionPlan:
        __result__ = self.__options.merge_options(baml_options).parse_response(function_name="PlanMission", llm_response=llm_response, mode="stream")
        return typing.cast(stream_types.MissionPlan, __result__)

    def SuggestMissions(
        self, llm_response: str, baml_options: BamlCallOptions = {},
    ) -> typing.List["stream_types.MissionSuggestion"]:
        __result__ = self.__options.merge_options(baml_options).parse_response(function_name="SuggestMissions", llm_response=llm_response, mode="stream")
        return typing.cast(typing.List["stream_types.MissionSuggestion"], __result__)