{"id":17309844,"url":"https://github.com/bobld/snipsnlu","last_synced_at":"2025-04-14T13:56:29.766Z","repository":{"id":38024095,"uuid":"188671211","full_name":"BobLd/SnipsNlu","owner":"BobLd","description":"Snips NLU C# wrapper library to extract meaning from text ","archived":false,"fork":false,"pushed_at":"2022-12-08T05:36:50.000Z","size":14184,"stargazers_count":6,"open_issues_count":2,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-06T07:38:52.568Z","etag":null,"topics":["natural-language-processing","natural-language-understanding","nlp","nlu","nlu-engine","snips","snips-nlu"],"latest_commit_sha":null,"homepage":null,"language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BobLd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-05-26T10:53:31.000Z","updated_at":"2025-01-24T08:15:49.000Z","dependencies_parsed_at":"2022-09-16T22:13:02.664Z","dependency_job_id":null,"html_url":"https://github.com/BobLd/SnipsNlu","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobLd%2FSnipsNlu","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobLd%2FSnipsNlu/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobLd%2FSnipsNlu/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobLd%2FSnipsNlu/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BobLd","download_url":"https://codeload.github.com/BobLd/SnipsNlu/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248893137,"owners_count":21178951,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["natural-language-processing","natural-language-understanding","nlp","nlu","nlu-engine","snips","snips-nlu"],"created_at":"2024-10-15T12:33:00.468Z","updated_at":"2025-04-14T13:56:29.741Z","avatar_url":"https://github.com/BobLd.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"Snips NLU C#\n============\nSnips NLU C# wrapper library to extract meaning from text \n\nReferences\n----------\n- https://snips.ai/\n- https://github.com/snipsco/snips-nlu\n- https://github.com/snipsco/snips-nlu-rs/\n\nWhat is Snips NLU about ?\n-------------------------\n[From https://github.com/snipsco/snips-nlu/blob/develop/README.rst]\n\nBehind every chatbot and voice assistant lies a common piece of technology: Natural Language Understanding (NLU). Anytime a user interacts with an AI using natural language, their words need to be translated into a machine-readable description of what they meant.\n\nThe NLU engine first detects what the intention of the user is (a.k.a. intent), then extracts the parameters (called slots) of the query. The developer can then use this to determine the appropriate action or response.\n\nVersion\n-------\n0.64.3\n\nx86 and x64 libraries\n---------------------\nThe pre-built DLL files are available in there respective directories.\n### Some useful resources:\n- https://www.reddit.com/r/rust/comments/78vpxg/help_cross_compiling_for_32_bit_on_windows/\n- https://www.reddit.com/r/rust/comments/a5guk3/cant_use_i686pcwindowsmsvc/\n- https://gist.github.com/InNoHurryToCode/955d63db0d79699fed63fe18eeebf17e\n- https://github.com/japaric/rust-cross#the-target-triple\n\n### Building the DLLs\n#### For Windows\nTo build the dll, in `Cargo.toml` set `crate-type` to `[\"cdylib\"]`. In `\\.rustup\\settings.toml`, it might be necessary to change `default_host_triple` to `i686-pc-windows-msvc` or to `x86_64-pc-windows-msvc`.\n\nTo check if the necessary toolchains are installed, run `rustup toolchain list`.\n- __x86 build__  \n  If necessary, run the following to install the toolchain:\n  ```\n  rustup install stable-i686-pc-windows-msvc\n  ```\n  Then run:\n  ```\n  cargo build --release --target=i686-pc-windows-msvc\n  ```\n\n- __x64 build__\n  \n  If necessary, run the following to install the toolchain:\n  ```\n  rustup install stable-x86_64-pc-windows-msvc\n  ```\n  Then run:\n  ```\n  cargo build --release --target=x86_64-pc-windows-msvc\n  ```\n\nCode Examples\n-------------\nLoad a Model from a folder:\n``` C#\nusing (var snipsNLUEngine = SnipsNLUEngine.CreateFromDirectory(@\"Data\\Tests\\Models\\nlu_engine\"))\n{\n    IntentClassifierResult[] intents = snipsNLUEngine.GetIntents(\"Can you make 3 cups of coffee?\");\n    Slot[] slots = snipsNLUEngine.GetSlots(\"Can you make 3 cups of coffee?\", intents[0].IntentName);\n    // or\n    IntentParserResult parsed = snipsNLUEngine.Parse(\"Can you make 3 cups of coffee?\");\n    Console.WriteLine(parsed);\n}\n```\nor \n``` C#\nusing (var snipsNLUEngine = new SnipsNLUEngine(@\"Data\\Tests\\Models\\nlu_engine\"))\n{\n    IntentClassifierResult[] intents = snipsNLUEngine.GetIntents(\"Can you make 3 cups of coffee?\");\n    Slot[] slots = snipsNLUEngine.GetSlots(\"Can you make 3 cups of coffee?\", intents[0].IntentName);\n    // or\n    IntentParserResult parsed = snipsNLUEngine.Parse(\"Can you make 3 cups of coffee?\");\n    Console.WriteLine(parsed);\n}\n```\n\nLoad a Model from a Zip file:\n``` C#\nusing (var snipsNLUEngine = SnipsNLUEngine.CreateFromZip(@\"Data\\Tests\\Models\\nlu_engine.zip\"))\n{\n    IntentParserResult parsed = snipsNLUEngine.Parse(\"Can you make 3 cups of coffee?\");\n    Console.WriteLine(parsed);\n}\n```\nOutput will be:\n```\nCan you make 3 cups of coffee?\n        MakeCoffee (61.43%)\n                '3 (Number)', '3', snips/number, number_of_cups @ [13;14]\n```\n\nTO DO list\n----------\n- [x] Load model from zip file\n- [ ] Implement `CStringArray` class\n- [ ] Implement `intentsWhitelist` and `intentsBlacklist` in `SnipsNLUEngine.Parse()`\n\nLicense\n-------\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbobld%2Fsnipsnlu","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbobld%2Fsnipsnlu","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbobld%2Fsnipsnlu/lists"}