{"id":19882969,"url":"https://github.com/modelscope/adaseq","last_synced_at":"2025-05-16T16:05:40.375Z","repository":{"id":64132337,"uuid":"572916431","full_name":"modelscope/AdaSeq","owner":"modelscope","description":"AdaSeq: An All-in-One Library for Developing State-of-the-Art Sequence Understanding Models","archived":false,"fork":false,"pushed_at":"2023-11-15T12:08:20.000Z","size":5278,"stargazers_count":434,"open_issues_count":32,"forks_count":41,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-04-12T14:19:16.483Z","etag":null,"topics":["bert","chinese-nlp","crf","entity-typing","information-extraction","multi-modal-ner","named-entity-recognition","natural-language-processing","natural-language-understanding","ner","nlp","pytorch","relation-extraction","sequence-labeling","token-classification","word-segmentation"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/modelscope.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2022-12-01T10:00:28.000Z","updated_at":"2025-04-07T08:42:01.000Z","dependencies_parsed_at":"2023-12-17T19:49:53.347Z","dependency_job_id":null,"html_url":"https://github.com/modelscope/AdaSeq","commit_stats":{"total_commits":236,"total_committers":12,"mean_commits":"19.666666666666668","dds":0.2627118644067796,"last_synced_commit":"f7dbb926cce1038034bfbe27de101a03a8abd1f1"},"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/modelscope%2FAdaSeq","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/modelscope%2FAdaSeq/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/modelscope%2FAdaSeq/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/modelscope%2FAdaSeq/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/modelscope","download_url":"https://codeload.github.com/modelscope/AdaSeq/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248578875,"owners_count":21127714,"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":["bert","chinese-nlp","crf","entity-typing","information-extraction","multi-modal-ner","named-entity-recognition","natural-language-processing","natural-language-understanding","ner","nlp","pytorch","relation-extraction","sequence-labeling","token-classification","word-segmentation"],"created_at":"2024-11-12T17:19:03.811Z","updated_at":"2025-04-12T14:19:27.159Z","avatar_url":"https://github.com/modelscope.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AdaSeq: An All-in-One Library for Developing State-of-the-Art Sequence Understanding Models\n\n\u003cdiv align=\"center\"\u003e\n\n[![license](https://img.shields.io/github/license/modelscope/adaseq.svg)](./LICENSE)\n[![modelscope](https://img.shields.io/badge/modelscope-\u003e=1.4.0-624aff.svg)](https://modelscope.cn/)\n![version](https://img.shields.io/github/tag/modelscope/adaseq.svg)\n[![issues](https://img.shields.io/github/issues/modelscope/adaseq.svg)](https://github.com/modelscope/AdaSeq/issues)\n[![stars](https://img.shields.io/github/stars/modelscope/adaseq.svg)](https://github.com/modelscope/AdaSeq/stargazers)\n[![downloads](https://static.pepy.tech/personalized-badge/adaseq?period=total\u0026left_color=grey\u0026right_color=yellowgreen\u0026left_text=downloads)](https://pypi.org/project/adaseq)\n[![contribution](https://img.shields.io/badge/contributions-welcome-brightgreen.svg)](./CONTRIBUTING.md)\n\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n\nEnglish | [简体中文](./README_zh.md)\n\n\u003c/div\u003e\n\n## Introduction\n***AdaSeq*** (**A**libaba **D**amo **A**cademy **Seq**uence Understanding Toolkit) is an easy-to-use all-in-one library, built on [ModelScope](https://modelscope.cn/home), that allows researchers and developers to train custom models for sequence understanding tasks, including part-of-speech tagging (POS Tagging), chunking, named entity recognition (NER), entity typing, relation extraction (RE), etc.\n\n![](./docs/imgs/task_examples_en.png)\n\n\u003cdetails open\u003e\n\u003csummary\u003e🌟 \u003cb\u003eFeatures:\u003c/b\u003e\u003c/summary\u003e\n\n- **Plentiful Models**:\n\n  AdaSeq provide plenty of cutting-edge models, training methods and useful toolkits for sequence understanding tasks.\n\n- **State-of-the-Art**:\n\n  Our aim to develop the best implementation, which can beat many off-the-shelf frameworks on performance.\n\n- **Easy-to-Use**:\n\n  One line of command is all you need to obtain the best model.\n\n- **Extensible**:\n\n  It's easy to register a module, or build a customized sequence understanding model by assembling the predefined modules.\n\n\u003c/details\u003e\n\n⚠️**Notice:** This project is under quick development. This means some interfaces could be changed in the future.\n\n## 📢 What's New\n- 2022-07: [SemEval 2023] Our U-RaNER paper won [Best Paper Award](https://semeval.github.io/SemEval2023/awards)!\n- 2022-03: [SemEval 2023] Our U-RaNER won ***1st place in 9 tracks*** at [SemEval 2023 Task2](https://multiconer.github.io/results): Multilingual Complex Named Entity Recognition! [Model introduction and source code can be found here](./examples/U-RaNER).\n- 2022-12: [[EMNLP 2022] Retrieval-augmented Multimodal Entity Understanding Model (MoRe)](./examples/MoRe)\n- 2022-11: [[EMNLP 2022] Ultra-Fine Entity Typing Model (NPCRF)](./examples/NPCRF)\n- 2022-11: [[EMNLP 2022] Unsupervised Boundary-Aware Language Model (BABERT)](./examples/babert)\n\n## ⚡ Quick Experience\nYou can try out our models via online demos built on ModelScope:\n[[English NER]](https://modelscope.cn/models/damo/nlp_raner_named-entity-recognition_english-large-news/summary)\n[[Chinese NER]](https://modelscope.cn/models/damo/nlp_raner_named-entity-recognition_chinese-base-news/summary)\n[[CWS]](https://modelscope.cn/models/damo/nlp_structbert_word-segmentation_chinese-base/summary)\n\nMore tasks, more languages, more domains: All modelcards we released can be found in this page [Modelcards](./docs/modelcards.md).\n\n## 🛠️ Model Zoo\n\u003cdetails open\u003e\n\u003csummary\u003e\u003cb\u003eSupported models:\u003c/b\u003e\u003c/summary\u003e\n\n- [Transformer-based CRF](./examples/bert_crf)\n- [Partial CRF](./examples/partial_bert_crf)\n- [Retrieval Augmented NER](./examples/RaNER)\n- [Biaffine NER](./examples/biaffine_ner)\n- [Global-Pointer](./examples/global_pointer)\n- [Multi-label Entity Typing](./examples/entity_typing)\n- ...\n\u003c/details\u003e\n\n## 💾 Dataset Zoo\nWe collected many datasets for sequence understanding tasks. All can be found in this page [Datasets](./docs/datasets.md).\n\n## 📦 Installation\nAdaSeq project is based on `Python \u003e= 3.7`, `PyTorch \u003e= 1.8` and `ModelScope \u003e= 1.4`. We assure that AdaSeq can run smoothly when `ModelScope == 1.9.5`.\n\n- installation via pip：\n```\npip install adaseq\n```\n\n- installation from source：\n```\ngit clone https://github.com/modelscope/adaseq.git\ncd adaseq\npip install -r requirements.txt -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html\n```\n\n### Verify the Installation\nTo verify whether AdaSeq is installed properly, we provide a demo config for training a model (the demo config will be automatically downloaded).\n```\nadaseq train -c demo.yaml\n```\nYou will see the training logs on your terminal. Once the training is done, the results on test set will be printed: `test: {\"precision\": xxx, \"recall\": xxx, \"f1\": xxx}`. A folder `experiments/toy_msra/` will be generated to save all experimental results and model checkpoints.\n\n## 📖 Tutorials\n- [Quick Start](./docs/tutorials/quick_start.md)\n- Basics\n  - [Learning about Configs](./docs/tutorials/learning_about_configs.md)\n  - [Customizing Dataset](./docs/tutorials/customizing_dataset.md)\n  - [TODO] Common Architectures\n  - [TODO] Useful Hooks\n  - [Hyperparameter Optimization](./docs/tutorials/hyperparameter_optimization.md)\n  - [Training with Multiple GPUs](./docs/tutorials/training_with_multiple_gpus.md)\n- Best Practice\n  - [Training a Model with Custom Dataset](./docs/tutorials/training_a_model.md)\n  - [Reproducing Results in Published Papers](./docs/tutorials/reproducing_papers.md)\n  - [TODO] Uploading Saved Model to ModelScope\n  - [TODO] Customizing your Model\n  - [TODO] Serving with AdaLA\n\n## 📝 Contributing\nAll contributions are welcome to improve AdaSeq. Please refer to [CONTRIBUTING.md](./CONTRIBUTING.md) for the contributing guideline.\n\n## 📄 License\nThis project is licensed under the Apache License (Version 2.0).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmodelscope%2Fadaseq","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmodelscope%2Fadaseq","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmodelscope%2Fadaseq/lists"}