CloudBuilder.Topshelf/Task/Python/PythonRunTask.cs
owenchen 597b88d075 ow
2026-05-28 15:49:25 +08:00

60 lines
2.2 KiB
C#

using CloudBuilder.Core.DatabaseAccessor.Entity;
using CloudBuilder.Core.DependencyInjection.Task;
using CloudBuilder.Topshelf.Python;
using CloudBuilder.Topshelf.Task.Novel.Process;
using CloudBuilder.Topshelf.Utility;
namespace CloudBuilder.Topshelf.Task
{
//task:PythonRunTask param_name:param_value
public class PythonRunTask : IScheduleTask
{
private readonly IApplicationService service;
public PythonRunTask(IApplicationService service)
{
this.service = service;
}
public void Run(Dictionary<string, string> bodyDict)
{
PythonCommand python = new PythonCommand(service);
try
{
Hanlp2 hanlp = new Hanlp2(python);
string text = @"金越大师,听说你前两日派人请这位韩道友聚一下,他却开始闭关了,可有此事的。";
//text = "艳美少妇打了韩立";
//text = "徐先生还具体帮助他确定了把画雄鹰、松鼠和麻雀作为主攻目标。";
text = "银发老者神色一肃的向金越禅师问道。";
//text = "鬼灵门门主一边吩咐着,一边冷冷打量着悬浮在身前的画轴,见其并没有任何异样发生,目光闪动几下。";
text = "韩立闻言,眉头不经意的一皱,想了想后,还是摇摇头说道:";
List<string> sentiments = hanlp.GetTokFine(text);
sentiments = hanlp.GetTokCoarse(text);
string depRoot = hanlp.GetDepRoot(text);
List<NamedEntity> ners = hanlp.GetHanlpNer(text);
List<List<MeaningRepresentationParsingEntity>> srls = hanlp.GetHanlpSrl(text);
List<HanlpConstituencyNode> cons = hanlp.GetHanlpCon(text);
SpeakerAnalysisHelper speakerFeatureLearner = new SpeakerAnalysisHelper();
speakerFeatureLearner.GetPerson(depRoot, ners, srls, cons);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
finally
{
python.Dispose();
}
}
}
}