So I have a rasa server running on http://localhost:5005/webhooks/rest/webhook by bulding it from a docker-compose file… So there’s rasa server running on a docker container. Can anyone tell if I can send train request to the endpoint URL…? If possible how? This is my scenario, I’ve attached my docker-compose.yml, Kindly have a look at that.docker-compose.yml (664 Bytes)
Side note: your server is running on localhost:5005, the webhooks route is just one route available.
Otherwise: Yes, you can. See the Rasa Open Source API Spec
Hi @mloubser, Thanks for the reply. The model/train endpoint works just fine whenever the rasa server is started through system[locally]. However when the rasa server is started through docker, and the endpoint is called I’m getting a 404 Error. I don’t know what’s the isue or what’s the right question to ask…
You’ll need to expose the rasa server. What does your docker-compose.yml look like?
I’ve exposed the ports in the docker-compose file… I’m able to post conversations… The docker-compose.yml file has been attached with the issue. Kindly have a check.
Ok, so you are trying to run training in a separate service on startup, and that service is not exposed. The rasa-run service should be able to receive a train request too though; What curl request are you sending?
Yes exactly, @mloubser when i send the following request to a rasa server which is started locally(i.e starting through terminal using “rasa run” cmd), im successfully able to train without any problem… However when i send the same request to a rasa server which is started through docker Im getting a 404.
This is my cURL request
curl --location --request POST 'http://localhost:5005/model/train?save_to_default_model_directory=true&force_training=false&callback_url=' \
--header 'Content-Type: application/x-yaml' \
--data-raw 'version: '\''2.0'\''
language: en
pipeline: null
policies: null
intents: [greet, goodbye, affirm, deny, mood_great, mood_unhappy, bot_challenge]
responses:
utter_greet:
- {text: '\''Hey! How are you?'\''}
utter_cheer_up:
- {text: '\''Here is something to cheer you up:'\'', image: '\''https://i.imgur.com/nGF1K8f.jpg'\''}
utter_did_that_help:
- {text: '\''Did that help you?'\''}
utter_happy:
- {text: '\''Great, carry on!'\''}
utter_goodbye:
- {text: Bye}
utter_iamabot:
- {text: '\''I am a bot, powered by Rasa.'\''}
session_config: {session_expiration_time: 60, carry_over_slots_to_new_session: true}
nlu:
- intent: greet
examples: |
- hey
- hello
- hi
- hello there
- good morning
- good evening
- moin
- hey there
- let'\''s go
- hey dude
- goodmorning
- goodevening
- good afternoon
- intent: goodbye
examples: |
- good afternoon
- cu
- good by
- cee you later
- good night
- bye
- goodbye
- have a nice day
- see you around
- bye bye
- see you later
- intent: affirm
examples: |
- yes
- y
- indeed
- of course
- that sounds good
- correct
- intent: deny
examples: |
- no
- n
- never
- I don'\''t think so
- don'\''t like that
- no way
- not really
- intent: mood_great
examples: |
- perfect
- great
- amazing
- feeling like a king
- wonderful
- I am feeling very good
- I am great
- I am amazing
- I am going to save the world
- super stoked
- extremely good
- so so perfect
- so good
- so perfect
- intent: mood_unhappy
examples: |
- my day was horrible
- I am sad
- I don'\''t feel very well
- I am disappointed
- super sad
- I'\''m so sad
- sad
- very sad
- unhappy
- not good
- not very good
- extremly sad
- so saad
- so sad
- intent: bot_challenge
examples: |
- are you a bot?
- are you a human?
- am I talking to a bot?
- am I talking to a human?
stories:
- story: happy path
steps:
- {intent: greet}
- {action: utter_greet}
- {intent: mood_great}
- {action: utter_happy}
- story: sad path 1
steps:
- {intent: greet}
- {action: utter_greet}
- {intent: mood_unhappy}
- {action: utter_cheer_up}
- {action: utter_did_that_help}
- {intent: affirm}
- {action: utter_happy}
- story: sad path 2
steps:
- {intent: greet}
- {action: utter_greet}
- {intent: mood_unhappy}
- {action: utter_cheer_up}
- {action: utter_did_that_help}
- {intent: deny}
- {action: utter_goodbye}
rules:
- rule: Say goodbye anytime the user says goodbye
steps:
- {intent: goodbye}
- {action: utter_goodbye}
- rule: Say '\''I am a bot'\'' anytime the user challenges
steps:
- {intent: bot_challenge}
- {action: utter_iamabot}
'
@mloubser , Any update on this problem? Did you try training rasa server after starting it using the attached docker-compose.yml
Sorry I thought I posted a follow up q - do all other endpoints of your docker-compose server work?
Yes able to communicate with the bot through the endpoint. Only /train is unavailable