GPT4Free

G4F - Docker Setup

Table of Contents

Prerequisites

Before you begin, ensure you have the following installed on your system:

Note: If you encounter issues with Docker, you can run the project directly using Python.

Installation and Setup

  1. Clone the Repository
    git clone https://github.com/xtekky/gpt4free.git
    cd gpt4free
    
  2. Build and Run with Docker Compose

    Pull the latest image and run a container with Google Chrome support:

       docker pull hlohaus789/g4f
       docker-compose up -d
    

    Or run the small docker images without Google Chrome:

       docker-compose -f docker-compose-slim.yml up -d
    
  3. Access the API or the GUI

    The api server will be accessible at http://localhost:1337

    And the gui at this url: http://localhost:8080

Non-Docker Method

If you encounter issues with Docker, you can run the project directly using Python:

  1. Clone the Repository
    git clone https://github.com/xtekky/gpt4free.git
    cd gpt4free
    
  2. Install Dependencies
    pip install -r requirements.txt
    
  3. Run the Server
    python -m g4f.api.run
    
  4. Access the API or the GUI

    The api server will be accessible at http://localhost:1337

    And the gui at this url: http://localhost:8080

Testing the API

You can test the API using curl or by creating a simple Python script:

Using curl

curl -X POST -H "Content-Type: application/json" -d '{"prompt": "What is the capital of France?"}' http://localhost:1337/chat/completions

Using Python

Create a file named test_g4f.py with the following content:

import requests

url = "http://localhost:1337/v1/chat/completions"
body = {
    "model": "gpt-4o-mini", 
    "stream": False,
    "messages": [
        {"role": "assistant", "content": "What can you do?"}
    ]
}

json_response = requests.post(url, json=body).json().get('choices', [])

for choice in json_response:
    print(choice.get('message', {}).get('content', ''))

Run the script:

python test_g4f.py

Troubleshooting

For more detailed information on API endpoints and usage, refer to the G4F API documentation.

Stopping the Service

Docker Method

To stop the Docker containers, use the following command:

docker-compose down

Non-Docker Method

If you’re running the server directly with Python, you can stop it by pressing Ctrl+C in the terminal where it’s running.


Return to Documentation