{"id":13409427,"url":"https://github.com/olivia-ai/olivia","last_synced_at":"2025-03-14T14:31:16.654Z","repository":{"id":39351158,"uuid":"136217503","full_name":"olivia-ai/olivia","owner":"olivia-ai","description":"💁‍♀️Your new best friend powered by an artificial neural network","archived":true,"fork":false,"pushed_at":"2023-12-06T09:17:46.000Z","size":31227,"stargazers_count":3681,"open_issues_count":27,"forks_count":351,"subscribers_count":87,"default_branch":"master","last_synced_at":"2024-10-29T21:06:02.188Z","etag":null,"topics":["ai","artificial-intelligence","assistant","backend","chatbot","deep-learning","go","golang","machine-learning","natural-language-processing","neural-network","olivia","translations","voice-assistant"],"latest_commit_sha":null,"homepage":"https://olivia-ai.org","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/olivia-ai.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null},"funding":{"github":"hugolgst"}},"created_at":"2018-06-05T18:19:31.000Z","updated_at":"2024-10-25T18:47:13.000Z","dependencies_parsed_at":"2023-12-10T12:45:56.060Z","dependency_job_id":null,"html_url":"https://github.com/olivia-ai/olivia","commit_stats":{"total_commits":632,"total_committers":24,"mean_commits":"26.333333333333332","dds":0.5458860759493671,"last_synced_commit":"c4bfc475e9855f9fa6ab260c009b4987cda87110"},"previous_names":[],"tags_count":21,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/olivia-ai%2Folivia","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/olivia-ai%2Folivia/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/olivia-ai%2Folivia/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/olivia-ai%2Folivia/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/olivia-ai","download_url":"https://codeload.github.com/olivia-ai/olivia/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243076782,"owners_count":20232477,"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":["ai","artificial-intelligence","assistant","backend","chatbot","deep-learning","go","golang","machine-learning","natural-language-processing","neural-network","olivia","translations","voice-assistant"],"created_at":"2024-07-30T20:01:00.699Z","updated_at":"2025-03-14T14:31:15.263Z","avatar_url":"https://github.com/olivia-ai.png","language":"Go","funding_links":["https://github.com/sponsors/hugolgst"],"categories":["Go","Bot Building","Neural Networks","Bot建设","开源类库","Uncategorized","Open source library","📦 Legacy \u0026 Inactive Projects","机器人相关` 构建和使用机器人的库`","Repositories","机器人相关"],"sub_categories":["Vector Database","机器学习","Machine Learning","Contents","Free e-books"],"readme":"\u003ch1 align=\"center\"\u003e\n  \u003cbr\u003e\n  \u003cimg src=\"https://olivia-ai.org/img/icons/olivia-with-text.png\" alt=\"Olivia's character\" width=\"300\"\u003e\n  \u003cbr\u003e\n\u003c/h1\u003e\n\n\u003ch4 align=\"center\"\u003e💁‍♀️ Your new best friend\u003c/h4\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://goreportcard.com/report/github.com/olivia-ai/olivia\"\u003e\u003cimg src=\"https://goreportcard.com/badge/github.com/olivia-ai/olivia\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://godoc.org/github.com/olivia-ai/olivia\"\u003e\u003cimg src=\"https://godoc.org/github.com/olivia-ai/olivia?status.svg\" alt=\"GoDoc\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://app.fossa.io/projects/git%2Bgithub.com%2Folivia-ai%2Folivia?ref=badge_shield\"\u003e\u003cimg src=\"https://app.fossa.io/api/projects/git%2Bgithub.com%2Folivia-ai%2Folivia.svg?type=shield\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://codecov.io/gh/olivia-ai/olivia\"\u003e\u003cimg src=\"https://codecov.io/gh/olivia-ai/olivia/branch/master/graph/badge.svg\" /\u003e\u003c/a\u003e\n  \u003cbr\u003e\n  \u003cimg src=\"https://github.com/olivia-ai/olivia/workflows/Code%20coverage/badge.svg\"\u003e\n  \u003cimg src=\"https://github.com/olivia-ai/olivia/workflows/Docker%20CI/badge.svg\"\u003e\n  \u003cimg src=\"https://github.com/olivia-ai/olivia/workflows/Format%20checker/badge.svg\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://twitter.com/oliv_ai\"\u003e\u003cimg alt=\"Twitter Follow\" src=\"https://img.shields.io/twitter/follow/oliv_ai\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://discord.gg/wXDwTdy\"\u003e\u003cimg src=\"https://img.shields.io/discord/699567909235720224?label=Discord\u0026style=social\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://www.youtube.com/watch?v=JRSNnW05suo\"\u003e\u003cimg width=\"250\" src=\"https://i.imgur.com/kEKJjJn.png\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://olivia-ai.org\"\u003eWebsite\u003c/a\u003e —\n  \u003ca href=\"https://docs.olivia-ai.org\"\u003eDocumentation\u003c/a\u003e —\n  \u003ca href=\"#getting-started\"\u003eGetting started\u003c/a\u003e —\n  \u003ca href=\"#introduction\"\u003eIntroduction\u003c/a\u003e —\n  \u003ca href=\"#translations\"\u003eTranslations\u003c/a\u003e —\n  \u003ca href=\"#contributors\"\u003eContributors\u003c/a\u003e —\n  \u003ca href=\"#license\"\u003eLicense\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  ⚠️ Please check the \u003cstrong\u003e\u003ca href=\"https://github.com/olivia-ai/olivia/issues\"\u003eCall for contributors\u003c/a\u003e\u003c/strong\u003e\n\u003c/p\u003e\n\n## Introduction\n\u003cp align=\"center\"\u003e\n  \u003cimg alt=\"introduction\" height=\"100\" src=\"https://i.imgur.com/Ygm9CMc.png\"\u003e\n\u003c/p\u003e\n\n### Description\nOlivia is an open-source chatbot built in Golang using Machine Learning technologies.\nIts goal is to provide a free and open-source alternative to big services like DialogFlow. \n\nYou can chat with her by speaking (STT) or writing, she replies with a text message but you can enable her voice (TTS).\n\nYou can clone the project and customize it as you want using [GitHub](https://github.com/olivia-ai/olivia)\nTry it on [her website!](https://olivia-ai.org)\n\n### Why Olivia?\n- The only chatbot project in Go that could be modulable and customizable.\n- Using daily a privacy-friendly chatbot is great.\n- The Website is a Progressive Web Application, which means you can add it to your phone and it seems like a native app!\n\n\n## Getting started\n### Installation \n#### Login to Github \n\nTo get a personal access token from Github go to `Setings \u003e Developer settings \u003e Personal Access Tokens`\n\nClick on Generate new Token and name it you MUST have read and write packages ticked on.\nThen click Generate new token\n\nReplace `TOKEN` with the Token that you just made.\n```bash\n$ export PAT=TOKEN\n```\n\nLogin to Github (Note: change USERNAME to Gthub username)\n```bash\n$ echo $PAT | docker login docker.pkg.github.com -u USERNAME --password-stdin\n```\n\n#### Docker\n\n\u003cp align=\"center\"\u003e\n  \u003cimg alt=\"docker installation\" height=\"100\" src=\"https://i.imgur.com/5NDCfF3.png\"\u003e\n\u003c/p\u003e\n\nPull the image from GitHub Packages\n```bash\n$ docker pull docker.pkg.github.com/olivia-ai/olivia/olivia:latest\n```\n\nThen start it\n```bash\n$ docker run -d -e PORT=8080 -p 8080:8080 docker.pkg.github.com/olivia-ai/olivia/olivia:latest\n```\n\nYou can just use the websocket of Olivia now.\n\nTo stop it, get the container id:\n```bash\n$ docker container ls\n```\n```bash\nCONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                    NAMES\n311b3abb963a        olivia              \"./main\"            7 minutes ago       Up 7 minutes        0.0.0.0:8080-\u003e8080/tcp   quizzical_mayer\n```\n\nand stop it\n```bash\n$ docker container stop 311b3abb963a \n```\n\nThe app will automatically check for `res/datasets/training.json` file which contains the save of the neural network.\nBy default when you clone the repository from Github you have a stable save.\nIf you want to train a new model just delete this file and rerun the app.\n\n#### GitHub\n\u003cp align=\"center\"\u003e\n  \u003cimg height=\"100\" src=\"https://i.imgur.com/RRPoP69.png\"\u003e\n\u003c/p\u003e\n\nClone the project via GitHub:\n\n```bash \n$ git clone git@github.com:olivia-ai/olivia.git\n```\n\nThen download the dependencies\n```bash\n$ go mod download\n```\n\nAnd run it\n```bash\n$ go run main.go\n```\n\n### Frontend and Backend\nTo install the frontend and the backend together, please use the `docker-compose.yml` file:\n\n```bash\n$ docker-compose up\n```\n\nAnd all done!\n\n## Architecture\n\u003cp align=\"center\"\u003e\n  \u003cimg alt=\"architecture\" height=\"85\" src=\"https://i.imgur.com/95h8WIU.png\"\u003e\n  \u003cbr\u003e\n  \u003cimg src=\"https://i.imgur.com/G9BYf4Y.png\"\u003e\n\u003c/p\u003e\n\n## Translations\n\n\u003cp align=\"center\"\u003e\n  \u003cimg alt=\"introduction\" height=\"130\" src=\"https://i.imgur.com/MDKbP0R.png\"\u003e\n\u003c/p\u003e\n\n### Languages supported\n- \u003cimg src=\"https://i.imgur.com/URqxsb0.png\" width=\"25\"\u003e English\n- \u003cimg src=\"https://i.imgur.com/Oo5BNk0.png\" width=\"25\"\u003e Spanish\n- \u003cimg src=\"https://i.imgur.com/2DWxeF9.png\" width=\"25\"\u003e Catalan\n- \u003cimg src=\"https://i.imgur.com/0dVqbjf.png\" width=\"25\"\u003e French\n- \u003cimg src=\"https://i.imgur.com/sXLQp8e.png\" width=\"25\"\u003e German\n- \u003cimg src=\"https://i.imgur.com/DGNcrRF.png\" width=\"25\"\u003e Italian\n- \u003cimg src=\"https://i.imgur.com/kB0RoFZ.png\" width=\"25\"\u003e Brazilian portuguese - not completed\n\n### Coverage\nThe coverage of the translations is given [here](https://olivia-ai.org/dashboard/language).\nTo add a language please read [the documentation for that](https://docs.olivia-ai.org/translations.html).\n\n## Contributors\n\n\u003cp align=\"center\"\u003e\n  \u003cimg alt=\"docker installation\" height=\"85\" src=\"https://i.imgur.com/6xr2zdp.png\"\u003e\n\u003c/p\u003e\n  \n### Contributing\nPlease refer to the [contributing file](.github/CONTRIBUTING.md)\n  \n### Code Contributors\nThanks to the people who contribute to Olivia. \n\n[Contribute](.github/CONTRIBUTING.md)\n\u003ca href=\"https://github.com/olivia-ai/olivia/graphs/contributors\"\u003e\u003cimg src=\"https://opencollective.com/olivia-ai/contributors.svg?width=950\u0026button=false\" /\u003e\u003c/a\u003e\n\n### Financial Contributors\nBecome a financial contributor and help Olivia growth. \n\nContribute on the GitHub page of [hugolgst](https://github.com/sponsors/hugolgst) ❤️\n\n## License\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://i.imgur.com/9Xxtchv.png\" height=\"90\"\u003e\n\u003c/p\u003e\n\n[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Folivia-ai%2Folivia.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.com%2Folivia-ai%2Folivia?ref=badge_large)\n\n\u003cp align=\"center\"\u003e\n  \u003cimg width=\"60\" src=\"https://olivia-ai.org/img/icons/olivia.png\"\u003e\n\u003cp\u003e\n\n\u003cp align=\"center\"\u003e\n  Made with ❤️ by \u003ca href=\"https://github.com/hugolgst\"\u003eHugo Lageneste\u003c/a\u003e\n\u003c/p\u003e\n\n![Olivia's wave](https://olivia-ai.org/img/background-olivia.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Folivia-ai%2Folivia","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Folivia-ai%2Folivia","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Folivia-ai%2Folivia/lists"}