fix training bug
This commit is contained in:
parent
ae99ce5ba7
commit
989d0362b9
|
|
@ -15,7 +15,7 @@
|
|||
},
|
||||
|
||||
"BotSharpIntentClassifier": {
|
||||
"classifer": "SVMClassifier"
|
||||
"classifer": "NaiveBayesClassifier"
|
||||
},
|
||||
|
||||
"BotSharpTagger": {
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ namespace Platform.Articulate
|
|||
public class ArticulateAi<TAgent> :
|
||||
PlatformBuilderBase<TAgent>,
|
||||
IPlatformBuilder<TAgent>
|
||||
where TAgent : AgentBase
|
||||
where TAgent : AgentModel
|
||||
{
|
||||
public DialogRequestOptions RequestOptions { get; set; }
|
||||
|
||||
|
|
@ -38,7 +38,7 @@ namespace Platform.Articulate
|
|||
|
||||
foreach (TAgent agent in results)
|
||||
{
|
||||
var domain = (agent as AgentModel).Domains.FirstOrDefault(x => x.Id == domainId);
|
||||
var domain = agent.Domains.FirstOrDefault(x => x.Id == domainId);
|
||||
|
||||
if (domain != null)
|
||||
{
|
||||
|
|
@ -55,7 +55,7 @@ namespace Platform.Articulate
|
|||
|
||||
foreach (TAgent agent in results)
|
||||
{
|
||||
foreach (DomainModel domain in (agent as AgentModel).Domains)
|
||||
foreach (DomainModel domain in agent.Domains)
|
||||
{
|
||||
var intent = domain.Intents.FirstOrDefault(x => x.Id == intentId);
|
||||
if (intent != null)
|
||||
|
|
@ -72,10 +72,8 @@ namespace Platform.Articulate
|
|||
{
|
||||
var intents = new List<IntentModel>();
|
||||
var allAgents = GetAllAgents();
|
||||
foreach (TAgent agt in allAgents)
|
||||
foreach (TAgent agent in allAgents)
|
||||
{
|
||||
var agent = agt as AgentModel;
|
||||
|
||||
foreach (DomainModel domain in agent.Domains)
|
||||
{
|
||||
foreach (IntentModel intent in domain.Intents)
|
||||
|
|
@ -94,8 +92,7 @@ namespace Platform.Articulate
|
|||
public TrainingCorpus ExtractorCorpus(TAgent agent)
|
||||
{
|
||||
var corpus = new TrainingCorpus();
|
||||
var agt = agent as AgentModel;
|
||||
corpus.Entities = agt.Entities.Select(x => new TrainingEntity
|
||||
corpus.Entities = agent.Entities.Select(x => new TrainingEntity
|
||||
{
|
||||
Entity = x.EntityName,
|
||||
Values = x.Examples.Select(y => new TrainingEntitySynonym
|
||||
|
|
@ -107,7 +104,7 @@ namespace Platform.Articulate
|
|||
|
||||
corpus.UserSays = new List<TrainingIntentExpression<TrainingIntentExpressionPart>>();
|
||||
|
||||
foreach(DomainModel domain in agt.Domains)
|
||||
foreach(DomainModel domain in agent.Domains)
|
||||
{
|
||||
foreach(IntentModel intent in domain.Intents)
|
||||
{
|
||||
|
|
@ -133,6 +130,13 @@ namespace Platform.Articulate
|
|||
return corpus;
|
||||
}
|
||||
|
||||
public override bool SaveAgent(TAgent agent)
|
||||
{
|
||||
agent.Status = "Changed";
|
||||
agent.LastTraining = DateTime.UtcNow;
|
||||
return base.SaveAgent(agent);
|
||||
}
|
||||
|
||||
public async Task<bool> Train(TAgent agent, TrainingCorpus corpus)
|
||||
{
|
||||
string agentDir = Path.Combine(AppDomain.CurrentDomain.GetData("DataPath").ToString(), "Projects", agent.Id);
|
||||
|
|
|
|||
|
|
@ -68,7 +68,7 @@ namespace Platform.Articulate.Controllers
|
|||
public AgentModel GetAgentById([FromRoute] string agentId)
|
||||
{
|
||||
var agent = builder.GetAgentById(agentId);
|
||||
|
||||
|
||||
return agent;
|
||||
}
|
||||
|
||||
|
|
@ -76,7 +76,7 @@ namespace Platform.Articulate.Controllers
|
|||
public AgentModel GetAgentByName([FromRoute] string agentName)
|
||||
{
|
||||
var agent = builder.GetAgentByName(agentName);
|
||||
|
||||
|
||||
return agent;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -35,5 +35,7 @@ namespace Platform.Articulate.Models
|
|||
public List<DomainModel> Domains { get; set; }
|
||||
|
||||
public List<EntityModel> Entities { get; set; }
|
||||
|
||||
public DateTime LastTraining { get; set; }
|
||||
}
|
||||
}
|
||||
|
|
|
|||
16
dockerfiles/ARTICULATE.Dockerfile
Normal file
16
dockerfiles/ARTICULATE.Dockerfile
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
# stage 1: build
|
||||
FROM microsoft/dotnet AS botsharp-articulate
|
||||
WORKDIR /source
|
||||
|
||||
# copies the rest of your code
|
||||
COPY . .
|
||||
|
||||
# RUN dotnet build
|
||||
RUN dotnet publish BotSharp.WebHost/BotSharp.WebHost.csproj --configuration ARTICULATE --output /app
|
||||
|
||||
# copy Settings folder
|
||||
WORKDIR /app
|
||||
RUN mkdir App_Data/Projects
|
||||
|
||||
# stage 2: run
|
||||
ENTRYPOINT [ "dotnet", "BotSharp.WebHost.dll" ]
|
||||
|
|
@ -1,37 +1,16 @@
|
|||
version: '3.0'
|
||||
|
||||
services:
|
||||
api:
|
||||
image: samtecspg/articulate-api:0.12.1
|
||||
ports: ['0.0.0.0:7500:7500']
|
||||
networks: ['botsharp-network']
|
||||
entrypoint: ['node', 'start.js']
|
||||
environment:
|
||||
- SWAGGER_BASE_PATH
|
||||
|
||||
ui:
|
||||
image: samtecspg/articulate-ui:0.12.1
|
||||
ports: ['0.0.0.0:3000:3000']
|
||||
networks: ['botsharp-network']
|
||||
environment:
|
||||
- rasanluendpoint=http://rasa:5000
|
||||
- API_URL
|
||||
|
||||
rasa:
|
||||
|
||||
botsharp:
|
||||
image: botsharpdocker/botsharp-rasa:latest
|
||||
ports: ['0.0.0.0:5000:5000']
|
||||
networks: ['botsharp-network']
|
||||
|
||||
duckling:
|
||||
image: samtecspg/duckling:0.1.6.0
|
||||
ports: ['0.0.0.0:8000:8000']
|
||||
networks: ['botsharp-network']
|
||||
|
||||
redis:
|
||||
image: redis:4.0.6-alpine
|
||||
ports: ['0.0.0.0:6379:6379']
|
||||
networks: ['botsharp-network']
|
||||
command: redis-server --appendonly yes
|
||||
|
||||
|
||||
networks: {botsharp-network: {}}
|
||||
|
|
|
|||
Loading…
Reference in a new issue