Skip to content

Commit 314ffe1

Browse files
authoredDec 12, 2024··
Merge branch 'main' into twitterClient-enhancements
2 parents 64220cb + 1c9a5a1 commit 314ffe1

File tree

160 files changed

+9486
-4244
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

160 files changed

+9486
-4244
lines changed
 

‎.env.example

+59-5
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,15 @@ DISCORD_VOICE_CHANNEL_ID= # The ID of the voice channel the bot should join (opt
55

66
# AI Model API Keys
77
OPENAI_API_KEY= # OpenAI API key, starting with sk-
8+
SMALL_OPENAI_MODEL= # Default: gpt-4o-mini
9+
MEDIUM_OPENAI_MODEL= # Default: gpt-4o
10+
LARGE_OPENAI_MODEL= # Default: gpt-4o
11+
EMBEDDING_OPENAI_MODEL= # Default: text-embedding-3-small
12+
IMAGE_OPENAI_MODEL= # Default: dall-e-3
813

14+
# Eternal AI's Decentralized Inference API
915
ETERNALAI_URL=
16+
ETERNALAI_MODEL= #Default: "neuralmagic/Meta-Llama-3.1-405B-Instruct-quantized.w4a16"
1017
ETERNALAI_API_KEY=
1118

1219
GROK_API_KEY= # GROK API Key
@@ -16,6 +23,14 @@ GOOGLE_GENERATIVE_AI_API_KEY= # Gemini API key
1623

1724
ALI_BAILIAN_API_KEY= # Ali Bailian API Key
1825
VOLENGINE_API_KEY= # VolEngine API Key
26+
NANOGPT_API_KEY= # NanoGPT API Key
27+
28+
HYPERBOLIC_API_KEY= # Hyperbolic API Key
29+
HYPERBOLIC_MODEL=
30+
IMAGE_HYPERBOLIC_MODEL= # Default: FLUX.1-dev
31+
SMALL_HYPERBOLIC_MODEL= # Default: meta-llama/Llama-3.2-3B-Instruct
32+
MEDIUM_HYPERBOLIC_MODEL= # Default: meta-llama/Meta-Llama-3.1-70B-Instruct
33+
LARGE_HYPERBOLIC_MODEL= # Default: meta-llama/Meta-Llama-3.1-405-Instruct
1934

2035
# Speech Synthesis
2136
ELEVENLABS_XI_API_KEY= # API key from elevenlabs
@@ -82,25 +97,49 @@ MEDIUM_GOOGLE_MODEL= # Default: gemini-1.5-flash-latest
8297
LARGE_GOOGLE_MODEL= # Default: gemini-1.5-pro-latest
8398
EMBEDDING_GOOGLE_MODEL= # Default: text-embedding-004
8499

100+
# Groq Configuration
101+
SMALL_GROQ_MODEL= # Default: llama-3.1-8b-instant
102+
MEDIUM_GROQ_MODEL= # Default: llama-3.3-70b-versatile
103+
LARGE_GROQ_MODEL= # Default: llama-3.2-90b-vision-preview
104+
EMBEDDING_GROQ_MODEL= # Default: llama-3.1-8b-instant
85105

106+
# NanoGPT Configuration
107+
SMALL_NANOGPT_MODEL= # Default: gpt-4o-mini
108+
MEDIUM_NANOGPT_MODEL= # Default: gpt-4o
109+
LARGE_NANOGPT_MODEL= # Default: gpt-4o
86110

87111
#LlamaLocal Configuration
88112
LLAMALOCAL_PATH= # Default: "" which is the current directory in plugin-node/dist/ which gets destroyed and recreated on every build
89113

90114
# API Keys
91115
ANTHROPIC_API_KEY= # For Claude
116+
SMALL_ANTHROPIC_MODEL= # Default: claude-3-haiku-20240307
117+
MEDIUM_ANTHROPIC_MODEL= # Default: claude-3-5-sonnet-20241022
118+
LARGE_ANTHROPIC_MODEL= # Default: claude-3-5-sonnet-20241022
119+
92120
HEURIST_API_KEY= # Get from https://heurist.ai/dev-access
93121

94122
# Heurist Models
95-
SMALL_HEURIST_LANGUAGE_MODEL=
96-
MEDIUM_HEURIST_LANGUAGE_MODEL=
97-
LARGE_HEURIST_LANGUAGE_MODEL=
98-
HEURIST_IMAGE_MODEL=
123+
SMALL_HEURIST_MODEL= # Default: meta-llama/llama-3-70b-instruct
124+
MEDIUM_HEURIST_MODEL= # Default: meta-llama/llama-3-70b-instruct
125+
LARGE_HEURIST_MODEL= # Default: meta-llama/llama-3.1-405b-instruct
126+
HEURIST_IMAGE_MODEL= # Default: PepeXL
99127

100128
# Gaianet Configuration
101129
GAIANET_MODEL=
102130
GAIANET_SERVER_URL=
131+
132+
SMALL_GAIANET_MODEL= # Default: llama3b
133+
SMALL_GAIANET_SERVER_URL= # Default: https://llama3b.gaia.domains/v1
134+
135+
MEDIUM_GAIANET_MODEL= # Default: llama
136+
MEDIUM_GAIANET_SERVER_URL= # Default: https://llama8b.gaia.domains/v1
137+
138+
LARGE_GAIANET_MODEL= # Default: qwen72b
139+
LARGE_GAIANET_SERVER_URL= # Default: https://qwen72b.gaia.domains/v1
140+
103141
GAIANET_EMBEDDING_MODEL=
142+
USE_GAIANET_EMBEDDING= # Set to TRUE for GAIANET/768, leave blank for local
104143

105144
# EVM
106145
EVM_PRIVATE_KEY=
@@ -144,6 +183,8 @@ INTIFACE_WEBSOCKET_URL=ws://localhost:12345
144183
FARCASTER_FID= # the FID associated with the account your are sending casts from
145184
FARCASTER_NEYNAR_API_KEY= # Neynar API key: https://neynar.com/
146185
FARCASTER_NEYNAR_SIGNER_UUID= # signer for the account you are sending casts from. create a signer here: https://dev.neynar.com/app
186+
FARCASTER_DRY_RUN=false # Set to true if you want to run the bot without actually publishing casts
187+
FARCASTER_POLL_INTERVAL=120 # How often (in seconds) the bot should check for farcaster interactions (replies and mentions)
147188

148189
# Coinbase
149190
COINBASE_COMMERCE_KEY= # from coinbase developer portal
@@ -168,7 +209,12 @@ ZEROG_PRIVATE_KEY=
168209
ZEROG_FLOW_ADDRESS=
169210

170211
# TEE Configuration
171-
DSTACK_SIMULATOR_ENDPOINT=
212+
# TEE_MODE options:
213+
# - LOCAL: Uses simulator at localhost:8090 (for local development)
214+
# - DOCKER: Uses simulator at host.docker.internal:8090 (for docker development)
215+
# - PRODUCTION: No simulator, uses production endpoints
216+
# Defaults to OFF if not specified
217+
TEE_MODE=OFF #LOCAL|DOCKER|PRODUCTION
172218
WALLET_SECRET_SALT= # ONLY DEFINE IF YOU WANT TO USE TEE Plugin, otherwise it will throw errors
173219

174220
# Galadriel Configuration
@@ -198,3 +244,11 @@ INTERNET_COMPUTER_ADDRESS=
198244
# Aptos
199245
APTOS_PRIVATE_KEY= # Aptos private key
200246
APTOS_NETWORK= # must be one of mainnet, testnet
247+
248+
249+
# AWS S3 Configuration Settings for File Upload
250+
AWS_ACCESS_KEY_ID=
251+
AWS_SECRET_ACCESS_KEY=
252+
AWS_REGION=
253+
AWS_S3_BUCKET=
254+
AWS_S3_UPLOAD_PATH=

‎.github/workflows/image.yaml

+61
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
#
2+
name: Create and publish a Docker image
3+
4+
# Configures this workflow to run every time a change is pushed to the branch called `release`.
5+
on:
6+
release:
7+
types: [created]
8+
workflow_dispatch:
9+
10+
# Defines two custom environment variables for the workflow. These are used for the Container registry domain, and a name for the Docker image that this workflow builds.
11+
env:
12+
REGISTRY: ghcr.io
13+
IMAGE_NAME: ${{ github.repository }}
14+
15+
# There is a single job in this workflow. It's configured to run on the latest available version of Ubuntu.
16+
jobs:
17+
build-and-push-image:
18+
runs-on: ubuntu-latest
19+
# Sets the permissions granted to the `GITHUB_TOKEN` for the actions in this job.
20+
permissions:
21+
contents: read
22+
packages: write
23+
attestations: write
24+
id-token: write
25+
#
26+
steps:
27+
- name: Checkout repository
28+
uses: actions/checkout@v4
29+
# Uses the `docker/login-action` action to log in to the Container registry registry using the account and password that will publish the packages. Once published, the packages are scoped to the account defined here.
30+
- name: Log in to the Container registry
31+
uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1
32+
with:
33+
registry: ${{ env.REGISTRY }}
34+
username: ${{ github.actor }}
35+
password: ${{ secrets.GITHUB_TOKEN }}
36+
# This step uses [docker/metadata-action](https://github.com/docker/metadata-action#about) to extract tags and labels that will be applied to the specified image. The `id` "meta" allows the output of this step to be referenced in a subsequent step. The `images` value provides the base name for the tags and labels.
37+
- name: Extract metadata (tags, labels) for Docker
38+
id: meta
39+
uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7
40+
with:
41+
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
42+
# This step uses the `docker/build-push-action` action to build the image, based on your repository's `Dockerfile`. If the build succeeds, it pushes the image to GitHub Packages.
43+
# It uses the `context` parameter to define the build's context as the set of files located in the specified path. For more information, see "[Usage](https://github.com/docker/build-push-action#usage)" in the README of the `docker/build-push-action` repository.
44+
# It uses the `tags` and `labels` parameters to tag and label the image with the output from the "meta" step.
45+
- name: Build and push Docker image
46+
id: push
47+
uses: docker/build-push-action@f2a1d5e99d037542a71f64918e516c093c6f3fc4
48+
with:
49+
context: .
50+
push: true
51+
tags: ${{ steps.meta.outputs.tags }}
52+
labels: ${{ steps.meta.outputs.labels }}
53+
54+
# This step generates an artifact attestation for the image, which is an unforgeable statement about where and how it was built. It increases supply chain security for people who consume the image. For more information, see "[AUTOTITLE](/actions/security-guides/using-artifact-attestations-to-establish-provenance-for-builds)."
55+
- name: Generate artifact attestation
56+
uses: actions/attest-build-provenance@v1
57+
with:
58+
subject-name: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME}}
59+
subject-digest: ${{ steps.push.outputs.digest }}
60+
push-to-registry: true
61+

0 commit comments

Comments
 (0)
Please sign in to comment.