{"id":19048473,"url":"https://github.com/wwakabobik/ai_engines","last_synced_at":"2026-06-19T08:01:43.146Z","repository":{"id":205152024,"uuid":"683126471","full_name":"wwakabobik/ai_engines","owner":"wwakabobik","description":"Collection of AI engines (apis) and utils","archived":false,"fork":false,"pushed_at":"2026-06-16T21:47:44.000Z","size":785,"stargazers_count":1,"open_issues_count":4,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-06-16T23:22:04.277Z","etag":null,"topics":["ai","async-api","dalle2","leonardo","leonardo-api","openai-api","openai-chatgpt"],"latest_commit_sha":null,"homepage":"","language":"Python","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/wwakabobik.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"buy_me_a_coffee":"wwakabobik","thanks_dev":"wwakabobik","custom":["https://www.donationalerts.com/r/rocketsciencegeek"]}},"created_at":"2023-08-25T16:59:22.000Z","updated_at":"2026-06-16T21:47:10.000Z","dependencies_parsed_at":null,"dependency_job_id":"0edf3ee4-8b27-4dbf-adf8-a950d0f7142b","html_url":"https://github.com/wwakabobik/ai_engines","commit_stats":null,"previous_names":["wwakabobik/ai_engines"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/wwakabobik/ai_engines","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wwakabobik%2Fai_engines","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wwakabobik%2Fai_engines/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wwakabobik%2Fai_engines/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wwakabobik%2Fai_engines/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wwakabobik","download_url":"https://codeload.github.com/wwakabobik/ai_engines/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wwakabobik%2Fai_engines/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34522042,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-19T02:00:06.005Z","response_time":61,"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":["ai","async-api","dalle2","leonardo","leonardo-api","openai-api","openai-chatgpt"],"created_at":"2024-11-08T23:07:01.350Z","updated_at":"2026-06-19T08:01:43.140Z","avatar_url":"https://github.com/wwakabobik.png","language":"Python","funding_links":["https://buymeacoffee.com/wwakabobik","https://thanks.dev/wwakabobik","https://www.donationalerts.com/r/rocketsciencegeek","https://www.buymeacoffee.com/wwakabobik"],"categories":[],"sub_categories":[],"readme":"# AI Engines\n\nThis is playground and utils libraries for AI stuff.\n\nIt is not a framework, but a collection of useful tools and examples. It's not a pinned repo, not a featured and supported, and in general violates all the best practices of software development. But it's a good place to start. At the beginning and the end of all, this repo contains stuff that I mentioned in my articles, thus, refer to [my blog](https://wwakabobik.github.io/) posts first.\n\n## What you can find here\n\n- [x] [**examples**](/examples) - a collection of examples of AI projects, including:\n  - [x] [image_generation](/examples/image_generation) - see [article](https://wwakabobik.github.io/2023/11/ai_image_generators_api/) first, this is example of image generation with LLM via API\n  - [x] [speak_and_hear](/examples/speak_and_hear) - see [article](https://wwakabobik.github.io/2023/09/ai_learning_to_hear_and_speak/) first, this is LLM speech recognition and TTS example\n  - [x] [test_generator](/examples/test_generator) - see [article](https://wwakabobik.github.io/2023/10/qa_ai_practices_used_for_qa/) first, this is QA automatic tests generator\n  - [x] [llm_api_comparison](/examples/llm_api_comparison) - see [article](https://wwakabobik.github.io/2023/12/ai_llms_2023/) first, this is LLM API comparison for 2023\n  - [x] [chroma_migration](/examples/chroma_migration) - see [article](https://wwakabobik.github.io/2025/11/migrating_chroma_db/) first, this is example of migrating ChromaDB from \u003c v0.7.x to v1.x.x\n- [x] [**utils**](/utils) - a collection of useful tools for AI development, in general them all of them used in example projects:\n  - [x] [article_extractor](/utils/article_extractor.py) - limbo for article extraction from web pages\n  - [x] [audio_recorder](/utils/audio_recorder.py) - a simple audio recorder, used in speech recognition / TTS examples\n  - [x] [discord_interations](/utils/discord_interactions.py) - a simple discord interactions wrapper, used to fire self-bot commands\n  - [x] [discord_watcher](/utils/discord_watcher.py) - a simple discord watcher bot, used to watch for messages in discord channels and get content (urls)\n  - [x] [llm_timer_wrapper](/utils/llm_timer_wrapper.py) - a simple timer wrapper for LLM APIs, used for benchmarking of models\n  - [x] [logger_config](/utils/logger_config.py) - general logger\n  - [x] [other](/utils/other.py) - all that doesn't fit in other files, i.e. env checkers\n  - [x] [page_retriever](/utils/page_retriever.py) - web page retriever and parser\n  - [x] [transcriptors](/utils/transcriptors.py) - custom transcriptors wrappers for speech recognition\n  - [x] [translators](/utils/translators.py) - custom translators for text translation wrappers\n  - [x] [tts](/utils/tts.py) - custom TTS engines wrappers\n  - [x] [chroma_migration](utils/chromadb_migration/) - utilities for ChromaDB management and migration\n\n## Running up that hill\n\nOnce again, refer to [my blog](https://wwakabobik.github.io/) posts first. If you do so, you may try exec some top-level scripts from parent directory:\n    \n```bash\ngit clone git@github.com:wwakabobik/ai_engines.git  # clone this repo\ncd ai_engines  # go to repo directory\n# It's highly recommended to use python 3.11+ and venv\npython -m venv venv  # create virtual environment\nsource venv/bin/activate  # activate virtual environment\npip install -r requirements.txt  # install dependencies\n# then you may run some top-level script, like:\nPYTHONPATH=. python -m examples.test_generator.generator_test\nPYTHONPATH=. python -m examples.speak_and_hear.test_gpt \nPYTHONPATH=. python -m examples.chroma_migration.migrate_chroma_test\n```\n\nWell, in most cases you need to create cred file to run examples, so, create `creds.py` under `examples` directory and fill it with your credentials, like:\n\n```python\n# -*- coding: utf-8 -*-\n\"\"\"Creds file\"\"\"\noai_token = \"alksjdlksajlkdjlajiouoieuoqijnc\"\noai_organization = \"slkahkdjshakjhfkjafs\"\ncohere_token = \"saklljlkdjsaldjljasldjlsak\"\nllama_token=\"asiuoiduaosudouasosuoduoqoihicdhzch\"\nablt_token=\"sadhsakhdajskhaskdkja\"\nclaude_token=\"dkshjjsdhkjdshkjhskj\"\nopenweathermap_appid = \"salkdjaslkjldasjlkdasl\"\nmidjourney_cookie=\"skjaklshkldfhkjsahjhfkjbkfsa\"\n```\n\nGL\u0026HF!\n\n\n# Donations\n\nYou may support my work via [Buy Me A Coffee](https://www.buymeacoffee.com/wwakabobik) or [Thanks Dev](https://thanks.dev/wwakabobik) or [Donation Alerts](https://www.donationalerts.com/r/rocketsciencegeek)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwwakabobik%2Fai_engines","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwwakabobik%2Fai_engines","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwwakabobik%2Fai_engines/lists"}