internal QuestionAnsweringModuleBase(ComposedGraph graph, CallStorage storage) { Storage = storage; Pool = new ContextPool(graph); _adviceAnswer = storage.RegisterCall("AdviceAnswer", c => { _AdviceAnswer(c.String("question"), c.Bool("isBasedOnContext"), c.Node("correctAnswerNode", Graph), c.Nodes("context", Graph)); }); _repairAnswer = storage.RegisterCall("RepairAnswer", c => { _RepairAnswer(c.String("question"), c.Node("suggestedAnswer", Graph), c.Nodes("context", Graph)); }); _setEquivalencies = storage.RegisterCall("SetEquivalence", c => { SetEquivalence(c.String("patternQuestion"), c.String("queriedQuestion"), c.Bool("isEquivalent")); }); _negate = storage.RegisterCall("Negate", c => { Negate(c.String("question")); }); }
internal SolutionLog(UserData userData, ExperimentBase experiment, int taskId) { _experiment = experiment; _taskId = taskId; _task = experiment.GetTask(taskId); var isInitialized = false; var logPath = experiment.GetLogPath(userData.UserID, taskId); _logStorage = new CallStorage(logPath); _infoCall = _logStorage.RegisterCall("Info", c => { isInitialized = true; }); _completitionCall = _logStorage.RegisterCall("ReportTaskCompletition", c => { }); _logStorage.ReadStorage(); if (!isInitialized) { logInfo("solution initialized"); } reportTaskStart(_task); //console has to be created after log storage is prepared _console = createConsole(taskId); }