{"id":33179773,"url":"https://github.com/percyliang/sempre","last_synced_at":"2026-01-10T21:01:33.197Z","repository":{"id":10678525,"uuid":"12916283","full_name":"percyliang/sempre","owner":"percyliang","description":"Semantic Parser with Execution","archived":false,"fork":false,"pushed_at":"2023-05-01T19:48:10.000Z","size":11384,"stargazers_count":835,"open_issues_count":88,"forks_count":296,"subscribers_count":69,"default_branch":"master","last_synced_at":"2025-05-19T10:16:49.746Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/percyliang.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2013-09-18T06:59:41.000Z","updated_at":"2025-05-01T22:41:34.000Z","dependencies_parsed_at":"2023-02-17T13:31:03.279Z","dependency_job_id":"47974343-2846-4650-a036-86174f5fb9b7","html_url":"https://github.com/percyliang/sempre","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/percyliang/sempre","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/percyliang%2Fsempre","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/percyliang%2Fsempre/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/percyliang%2Fsempre/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/percyliang%2Fsempre/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/percyliang","download_url":"https://codeload.github.com/percyliang/sempre/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/percyliang%2Fsempre/sbom","scorecard":{"id":727732,"data":{"date":"2025-08-11","repo":{"name":"github.com/percyliang/sempre","commit":"876338fdbcb47f947969a02a9a12137ecd7203e5"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":1.7,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Code-Review","score":0,"reason":"Found 1/15 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":9,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Warn: project license file does not contain an FSF or OSI license."],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Vulnerabilities","score":0,"reason":"32 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-3rq5-2g8h-59hc","Warn: Project is vulnerable to: PYSEC-2021-12 / GHSA-9p9m-jm8w-94p2","Warn: Project is vulnerable to: PYSEC-2018-66 / GHSA-562c-5r94-xh97","Warn: Project is vulnerable to: PYSEC-2019-179 / GHSA-5wv5-4vpf-pj6m","Warn: Project is vulnerable to: PYSEC-2023-62 / GHSA-m2qf-hxjv-5gpq","Warn: Project is vulnerable to: GHSA-43qf-4rqw-9q2g","Warn: Project is vulnerable to: GHSA-7rxf-gvfg-47g4","Warn: Project is vulnerable to: GHSA-84pr-m4jr-85g5","Warn: Project is vulnerable to: GHSA-8vgw-p6qm-5gr7","Warn: Project is vulnerable to: PYSEC-2024-71 / GHSA-hxwh-jpp2-84pm","Warn: Project is vulnerable to: PYSEC-2020-43 / GHSA-xc3p-ff3m-f46v","Warn: Project is vulnerable to: PYSEC-2021-16 / GHSA-93xj-8mrv-444m","Warn: Project is vulnerable to: PYSEC-2019-217 / GHSA-462w-v97r-4m45","Warn: Project is vulnerable to: GHSA-cpwx-vrp4-4pq7","Warn: Project is vulnerable to: PYSEC-2021-66 / GHSA-g3rq-g295-4j3m","Warn: Project is vulnerable to: GHSA-h5c8-rqwp-cp95","Warn: Project is vulnerable to: GHSA-h75v-3vvj-5mfj","Warn: Project is vulnerable to: GHSA-q2x7-8rv6-6q7h","Warn: Project is vulnerable to: PYSEC-2017-24 / GHSA-r9jw-mwhq-wp62","Warn: Project is vulnerable to: GHSA-9hjg-9r4m-mvj7","Warn: Project is vulnerable to: GHSA-9wx4-h78v-vm56","Warn: Project is vulnerable to: PYSEC-2023-74 / GHSA-j8r2-6x86-q33q","Warn: Project is vulnerable to: PYSEC-2018-28 / GHSA-x84v-xcm2-53pg","Warn: Project is vulnerable to: GHSA-2g68-c3qc-8985","Warn: Project is vulnerable to: GHSA-f9vj-2wh5-fj8j","Warn: Project is vulnerable to: PYSEC-2019-140 / GHSA-gq9m-qvpx-68hc","Warn: Project is vulnerable to: PYSEC-2023-221 / GHSA-hrfv-mqp8-q5rw","Warn: Project is vulnerable to: GHSA-j544-7q9p-6xp8","Warn: Project is vulnerable to: PYSEC-2023-57 / GHSA-px8h-6qxv-m22q","Warn: Project is vulnerable to: GHSA-q34m-jh98-gwm2","Warn: Project is vulnerable to: PYSEC-2023-58 / GHSA-xg9f-g7g7-2323","Warn: Project is vulnerable to: PYSEC-2022-203"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 22 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-22T13:22:45.660Z","repository_id":10678525,"created_at":"2025-08-22T13:22:45.660Z","updated_at":"2025-08-22T13:22:45.660Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28258096,"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","status":"online","status_checked_at":"2026-01-10T02:00:06.867Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2025-11-16T03:00:36.842Z","updated_at":"2026-01-10T21:01:33.176Z","avatar_url":"https://github.com/percyliang.png","language":"Java","funding_links":[],"categories":["人工智能","Java"],"sub_categories":[],"readme":"# SEMPRE 2.4: Semantic Parsing with Execution\n\n## What is semantic parsing?\n\nA semantic parser maps natural language utterances into an intermediate logical\nform, which is \"executed\" to produce a denotation that is useful for some task.\n\nA simple arithmetic task:\n\n- Utterance: *What is three plus four?*\n- Logical form: `(+ 3 4)`\n- Denotation: `7`\n\nA question answering task:\n\n- Utterance: *Where was Obama born?*\n- Logical form: `(place_of_birth barack_obama)`\n- Denotation: `Honolulu`\n\nA virtual travel agent task:\n\n- Utterance: *Show me flights to Montreal leaving tomorrow.*\n- Logical form: `(and (type flight) (destination montreal) (departure_date 2014.12.09))`\n- Denotation: `(list ...)`\n\nBy parsing utterances into logical forms, we obtain a rich representation that\nenables much deeper, context-aware understanding beyond the words.  With the\nrise of natural language interfaces, semantic parsers are becoming increasingly\nmore powerful and useful.\n\n## What is SEMPRE?\n\nSEMPRE is a toolkit that makes it easy to develop semantic parsers for new\ntasks.  The main paradigm is to learn a feature-rich discriminative semantic\nparser from a set of utterance-denotation pairs.  One can also quickly\nprototype rule-based systems, learn from other forms of supervision, and\ncombine any of the above.\n\nIf you use SEMPRE in your work, please cite:\n\n    @inproceedings{berant2013freebase,\n      author = {J. Berant and A. Chou and R. Frostig and P. Liang},\n      booktitle = {Empirical Methods in Natural Language Processing (EMNLP)},\n      title = {Semantic Parsing on {F}reebase from Question-Answer Pairs},\n      year = {2013},\n    }\n\nSEMPRE has been used in the following papers:\n\n- J. Berant and A. Chou and R. Frostig and P. Liang. [Semantic parsing on\n  Freebase from question-answer\n  pairs](http://cs.stanford.edu/~pliang/papers/freebase-emnlp2013.pdf).  EMNLP,\n  2013.\n  This paper introduced SEMPRE 1.0, applied it to question answering on\n  Freebase, and created the WebQuestions dataset.  The paper focuses on scaling\n  up semantic parsing via alignment and bridging, and does not talk about the\n  SEMPRE framework at all.  To reproduce those results, check out SEMPRE 1.0.\n- J. Berant and P. Liang.  [Semantic Parsing via\n  Paraphrasing](http://cs.stanford.edu/~pliang/papers/paraphrasing-acl2014.pdf).\n  ACL, 2014.\n  This paper also used SEMPRE 1.0.  The paraphrasing model is somewhat of a\n  offshoot, and does not use many of the core learning and parsing utiltiies in\n  SEMPRE.  To reproduce those results, check out SEMPRE 1.0.\n\nPlease refer to the [project page](https://nlp.stanford.edu/software/sempre/) for a more complete list.\n\n## Where do I go next?\n\n- If you're new to semantic parsing, you can learn more from the [background\n  reading section of the tutorial](TUTORIAL.md).\n- Install SEMPRE using the instructions under **Installation** below.\n- Walk through the [tutorial](TUTORIAL.md)\n  to get a hands-on introduction to semantic parsing through SEMPRE.\n- Read the complete [documentation](DOCUMENTATION.md)\n  to learn about the different components in SEMPRE.\n\n# Installation\n\n## Requirements\n\nYou must have the following already installed on your system.\n\n- Java 8 (not 7)\n- Ant 1.8.2\n- Ruby 1.8.7 or 1.9\n- wget\n- make (for compiling fig and Virtuoso)\n- zip (for unzip downloaded dependencies)\n\nOther dependencies will be downloaded as you need them.  SEMPRE has been tested\non Ubuntu Linux 12.04 and MacOS X.  Your mileage will vary depending on how\nsimilar your system is.\n\n## Easy setup\n\n1. Clone the GitHub repository:\n\n        git clone https://github.com/percyliang/sempre\n\n2. Download the minimal core dependencies (all dependencies will be placed in `lib`):\n\n        ruby ./pull-dependencies core\n\n3. Compile the source code (this produces `libsempre/sempre-core.jar`):\n\n        ant core\n        \n   If there is any issue during compilation, try deleting the directories `lib` and `fig`\n   and rerunning `./pull-dependencies core`\n\n4. Run an interactive shell:\n\n        ruby ./run @mode=simple\n\n    You should be able to type the following into the shell and get the answer `(number 7)`:\n\n        (execute (call + (number 3) (number 4)))\n\nTo go further, check out the [tutorial](TUTORIAL.md) and then the [full\ndocumentation](DOCUMENTATION.md).\n\n## Virtuoso graph database\n\nIf you will be using natural language to query databases (e.g., Freebase), then\nyou will also need to setup your own Virtuoso database (unless someone already\nhas done this for you):\n\nFor Ubuntu, follow this:\n\n    sudo apt-get install -y automake gawk gperf libtool bison flex libssl-dev\n\n    # Clone the repository\n    ./pull-dependencies virtuoso\n\n    # Make and install\n    cd virtuoso-opensource\n    ./autogen.sh\n    ./configure --prefix=$PWD/install\n    make\n    make install\n    cd ..\n\non OS/X you can install virtuoso using homebrew by following the instructions\n[here](http://carsten.io/virtuoso-os-on-mac-os/)\n\nTo have SEMPRE interact with Virtuoso, the required modules need to be compiled as follow:\n\n    ./pull-dependencies core corenlp freebase\n    ant freebase\n\n# Contribute\n\nTo contribute code or resource to SEMPRE:\n\n- Create a fork of the repository. If you already have a fork,\n  it is a good idea to sync with the upstream repository first.\n- Push your changes to a new branch in your fork.\n- Start a pull request: go to your branch on the GitHub website,\n  then click \"New pull request\". Please specify the `develop` branch\n  of the upstream repository.\n\n# ChangeLog\n\nChanges from SEMPRE 1.0 to SEMPRE 2.0:\n\n- Updated tutorial and documentation.\n- Refactored into a core part for building semantic parsers in general;\n  interacting with Freebase and Stanford CoreNLP are just different modules.\n- Removed fbalignment (EMNLP 2013) and paraphrase (ACL 2014) components to\n  avoid confusion.  If you want to reproduce those systems, use SEMPRE 1.0.\n\nChanges from SEMPRE 2.0 to SEMPRE 2.1:\n\n- Added the `tables` package for the paper *Compositional semantic parsing on semi-structured tables* (ACL 2015).\n- Add and `overnight` package for the paper *Building a semantic parser overnight* (ACL 2015).\n\nChanges from SEMPRE 2.1 to SEMPRE 2.2:\n\n- Added code for the paper *Inferring Logical Forms From Denotations* (ACL 2016).\n\nChanges from SEMPRE 2.2 to SEMPRE 2.3:\n\n- Added the `interactive` package for the paper *Naturalizing a programming language through interaction* (ACL 2017).\n\nChanges from SEMPRE 2.3 to SEMPRE 2.3.1:\n\n- Modified the `tables` module to resemble SEMPRE 2.1, effectively making it work again.\n\nChanges from SEMPRE 2.3.1 to SEMPRE 2.4:\n\n- Added the `cprune` package for the paper *Macro Grammars and Holistic Triggering for Efficient Semantic Parsing* (EMNLP 2017).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpercyliang%2Fsempre","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpercyliang%2Fsempre","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpercyliang%2Fsempre/lists"}