update
This commit is contained in:
65
src/type.jl
65
src/type.jl
@@ -1,6 +1,6 @@
|
||||
module type
|
||||
|
||||
export agent, sommelier, initAgentMemory
|
||||
export agent, sommelier, clearhistory
|
||||
|
||||
using Dates, UUIDs, DataStructures, JSON3
|
||||
using GeneralUtils
|
||||
@@ -67,7 +67,7 @@ abstract type agent end
|
||||
tools=tools
|
||||
)
|
||||
```
|
||||
"""
|
||||
""" #TODO update document
|
||||
@kwdef mutable struct sommelier <: agent
|
||||
name::String
|
||||
id::String
|
||||
@@ -154,29 +154,52 @@ function sommelier(
|
||||
return newAgent
|
||||
end
|
||||
|
||||
""" Clear agent history.
|
||||
|
||||
Arguments\n
|
||||
-----
|
||||
a::agent
|
||||
an agent
|
||||
|
||||
# function initAgentMemory(a::T) where {T<:agent}
|
||||
# a.chathistory = Dict{String,Any}()
|
||||
# a.mctstree = Dict{Symbol, Any}()
|
||||
# a.plan[:activeplan] = Dict{Symbol, Any}()
|
||||
# a.plan[:currenttrajectory] = Dict{Symbol, Any}()
|
||||
# end
|
||||
Return\n
|
||||
-----
|
||||
nothing
|
||||
|
||||
Example\n
|
||||
-----
|
||||
```jldoctest
|
||||
julia> using YiemAgent, MQTTClient, GeneralUtils
|
||||
julia> client, connection = MakeConnection("test.mosquitto.org", 1883)
|
||||
julia> connect(client, connection)
|
||||
julia> msgMeta = GeneralUtils.generate_msgMeta("testtopic")
|
||||
julia> agentConfig = Dict(
|
||||
:receiveprompt=>Dict(
|
||||
:mqtttopic=> "testtopic/receive",
|
||||
),
|
||||
:receiveinternal=>Dict(
|
||||
:mqtttopic=> "testtopic/internal",
|
||||
),
|
||||
:text2text=>Dict(
|
||||
:mqtttopic=> "testtopic/text2text",
|
||||
),
|
||||
)
|
||||
julia> a = YiemAgent.sommelier(
|
||||
client,
|
||||
msgMeta,
|
||||
agentConfig,
|
||||
)
|
||||
julia> YiemAgent.add_new_message(a, "user", "hello")
|
||||
julia> YiemAgent.clearhistory(a)
|
||||
```
|
||||
|
||||
function clearMessage(a::T) where {T<:agent}
|
||||
for i in eachindex(a.messages)
|
||||
if length(a.messages) > 0
|
||||
pop!(a.messages)
|
||||
else
|
||||
break
|
||||
end
|
||||
end
|
||||
|
||||
a.memory = newAgentMemory()
|
||||
|
||||
# @show a.messages
|
||||
# @show a.memory
|
||||
Signature\n
|
||||
-----
|
||||
""" #TODO update document
|
||||
function clearhistory(a::T) where {T<:agent}
|
||||
empty!(a.chathistory)
|
||||
empty!(a.mctstree)
|
||||
empty!(a.plan[:activeplan])
|
||||
empty!(a.plan[:currenttrajectory])
|
||||
end
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user