This commit is contained in:
narawat lamaiin
2024-04-15 19:47:53 +07:00
parent 919f4ab0ee
commit 5d95cfbb16
2 changed files with 33 additions and 7 deletions

View File

@@ -1 +1,6 @@
Hello World version 0.1.0
Todo:
[WORKING] use MCTS for planning
Change from version: 0.0.9
-

View File

@@ -47,18 +47,39 @@ using ..type, ..util, ..llmfunction
Return\n Return\n
----- -----
inferenced text messageleft
Example\n Example\n
----- -----
```jldoctest ```jldoctest
julia> using YiemAgent 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> addNewMessage(a, "user", "hello")
``` ```
Signature\n Signature\n
----- -----
""" #WORKING """ #WORKING
function addNewMessage(a::T1, role::String, text::T2) where {T1<:agent, T2<:AbstractString} function addNewMessage(a::T1, role::String, text::T2;
maximumMsg::Integer=20)::Integer where {T1<:agent, T2<:AbstractString}
if role a.availableRole # guard against typo if role a.availableRole # guard against typo
error("role is not in agent.availableRole $(@__LINE__)") error("role is not in agent.availableRole $(@__LINE__)")
end end
@@ -72,14 +93,14 @@ function addNewMessage(a::T1, role::String, text::T2) where {T1<:agent, T2<:Abst
end end
messageleft = 0 messageleft = 0
if userMsg > a.maxUserMsg # delete all conversation if userMsg > maximumMsg # delete all conversation
clearMessage(a) clearMessage(a)
messageleft = a.maxUserMsg messageleft = maximumMsg
else else
userMsg += 1 userMsg += 1
d = Dict(:role=> role, :text=> text, :timestamp=> Dates.now()) d = Dict(:role=> role, :text=> text, :timestamp=> Dates.now())
push!(a.messages, d) push!(a.messages, d)
messageleft = a.maxUserMsg - userMsg messageleft = maximumMsg - userMsg
end end
return messageleft return messageleft