ruankie / ecrivai

Fully automated AI blog writer that uses LangChain and GPT type LLMs for topic selection and content generation
MIT License
68 stars 17 forks source link
ai-blogger ai-writer autogpt automation blog-engine blogging chatgpt gemini gemini-api generation generative generativeai google-gemini gpt gpt-3 langchain llm openai openai-api

blog-link auto-publish GitHub stars GitHub forks GitHub contributors GitHub last commit

๐Ÿฆœ๐Ÿ”—โœ๏ธEcrivAI

EcrivAI is a fully automated AI blog writer that uses LangChain and GPT type LLMs for topic selection and content generation. The content is published to this blog

Star History Star History Chart

Usage

Prerequisites

  1. ๐Ÿ You will need a working install of conda.
  2. ๐Ÿ”‘ You will need an API key from OpenAI or Google. You can create one for free here:
    • OpenIA - to use models like GPT4
    • Google - to use models like Gemini

Dev Environment Setup

  1. Set up your API keys in a file called .env (see .env.example for an example)
  2. Set up and activate conda environment
    conda env create -f conda.yml
    conda activate ecrivai

If you are having trouble setting your environment variables with the .env file or you want to manually add them instead of using a .env file, you can set your environment variable in your ecrivai conda environment like this:

# set api key env var
conda env config vars set OPENAI_API_KEY="your-api-key-here"
conda env config vars set GOOGLE_API_KEY="your-api-key-here"
# re-activate env
conda activate base
conda activate ecrivai

CLI

Note: Remember to activate your ecrivai conda environment before doing this (see above)

You can quickly generate a new original blog by running:

python ecrivai/add_blog.py

This will add a blog to a Markdown file in a directory called content/. You can also specify your own output directory by running this instead:

python ecrivai/add_blog.py --out-dir path/to/dir