Skip to content

Commit

Permalink
Merge branch 'develop' of https://github.com/elizaos/eliza into develop
Browse files Browse the repository at this point in the history
  • Loading branch information
lalalune committed Mar 8, 2025
2 parents 5c5485c + b256863 commit a1ec32f
Show file tree
Hide file tree
Showing 6 changed files with 201 additions and 69 deletions.
1 change: 1 addition & 0 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -192,6 +192,7 @@ SMALL_VENICE_MODEL= # Default: llama-3.3-70b
MEDIUM_VENICE_MODEL= # Default: llama-3.3-70b
LARGE_VENICE_MODEL= # Default: llama-3.1-405b
IMAGE_VENICE_MODEL= # Default: fluently-xl
BYPASS_VENICE_SYSTEM_PROMPT= # <boolean> | Default: false

# Nineteen.ai Configuration
NINETEEN_AI_API_KEY= # Get a free api key from https://nineteen.ai/app/api
Expand Down
7 changes: 7 additions & 0 deletions .github/workflows/smoke-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,3 +30,10 @@ jobs:

- name: Run smoke tests
run: pnpm run smokeTests

- name: Upload test results
if: always()
uses: actions/upload-artifact@v4
with:
name: test-results-${{env.MODIFIED_BRANCH_NAME}}
path: ${{env.OUTPUT_TEST_DIR}}
38 changes: 20 additions & 18 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -28,14 +28,16 @@ RUN npm install -g pnpm@9.15.4 && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*

# Set Python 3 as the default python
RUN ln -sf /usr/bin/python3 /usr/bin/python
# Clone the repository
COPY . /app/eliza

# Set the working directory
WORKDIR /app
WORKDIR /app/eliza

# Copy application code
COPY . .
# List files to ensure package.json is present
RUN echo "Listing files in /app/eliza:" && ls -la

# Set Python 3 as the default python
RUN ln -sf /usr/bin/python3 /usr/bin/python

# Install dependencies
RUN pnpm install
Expand All @@ -60,20 +62,20 @@ RUN npm install -g pnpm@9.15.4 && \
WORKDIR /app

# Copy built artifacts and production dependencies from the builder stage
COPY --from=builder /app/package.json ./
COPY --from=builder /app/pnpm-workspace.yaml ./
COPY --from=builder /app/.npmrc ./
COPY --from=builder /app/turbo.json ./
COPY --from=builder /app/node_modules ./node_modules
COPY --from=builder /app/agent ./agent
COPY --from=builder /app/client ./client
COPY --from=builder /app/lerna.json ./
COPY --from=builder /app/packages ./packages
COPY --from=builder /app/scripts ./scripts
COPY --from=builder /app/characters ./characters
COPY --from=builder /app/eliza/package.json ./
COPY --from=builder /app/eliza/pnpm-workspace.yaml ./
COPY --from=builder /app/eliza/.npmrc ./
COPY --from=builder /app/eliza/turbo.json ./
COPY --from=builder /app/eliza/node_modules ./node_modules
COPY --from=builder /app/eliza/agent ./agent
COPY --from=builder /app/eliza/client ./client
COPY --from=builder /app/eliza/lerna.json ./
COPY --from=builder /app/eliza/packages ./packages
COPY --from=builder /app/eliza/scripts ./scripts
COPY --from=builder /app/eliza/characters ./characters

# Expose necessary ports
EXPOSE 3000 5173

# Command to start the application
CMD ["sh", "-c", "pnpm start & pnpm start:client"]
CMD ["sh", "-c", "pnpm start & pnpm start:client"]
11 changes: 10 additions & 1 deletion agent/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -212,7 +212,16 @@ async function jsonToCharacter(
};
}
// Handle plugins
character.plugins = await handlePluginImporting(character.plugins);
elizaLogger.debug(
`Constructing plugins for ${character.name} character ` +
`(count=${character.plugins.length})`,
);
const pluginConstructors = await handlePluginImporting(character.plugins);
const getSetting = (key: string) => settings[key];
character.plugins = [];
for (const pluginConstructor of pluginConstructors) {
character.plugins.push(await pluginConstructor(getSetting));
}
elizaLogger.info(
character.name,
"loaded plugins:",
Expand Down
162 changes: 131 additions & 31 deletions i18n/readme/README_TR.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,28 +6,41 @@

<div align="center">

📖 [Dokümantasyon](https://elizaos.github.io/eliza/) | 🎯 [Örnekler](https://github.com/thejoven/awesome-eliza)
📑 [Teknik Rapor](https://arxiv.org/pdf/2501.06781) | 📖 [Dokümantasyon](https://elizaos.github.io/eliza/) | 🎯 [Örnekler](https://github.com/thejoven/awesome-eliza)

</div>

## 🌍 README Çevirileri

[中文说明](i18n/readme/README_CN.md) | [日本語の説明](i18n/readme/README_JA.md) | [한국어 설명](i18n/readme/README_KOR.md) | [Persian](i18n/readme/README_FA.md) | [Français](i18n/readme/README_FR.md) | [Português](i18n/readme/README_PTBR.md) | [Türkçe](i18n/readme/README_TR.md) | [Русский](i18n/readme/README_RU.md) | [Español](i18n/readme/README_ES.md) | [Italiano](i18n/readme/README_IT.md) | [ไทย](i18n/readme/README_TH.md) | [Deutsch](i18n/readme/README_DE.md) | [Tiếng Việt](i18n/readme/README_VI.md) | [עִברִית](i18n/readme/README_HE.md) | [Tagalog](i18n/readme/README_TG.md) | [Polski](i18n/readme/README_PL.md) | [Arabic](i18n/readme/README_AR.md) | [Hungarian](i18n/readme/README_HU.md) | [Srpski](i18n/readme/README_RS.md) | [Română](i18n/readme/README_RO.md) | [Nederlands](i18n/readme/README_NL.md) | [Ελληνικά](i18n/readme/README_GR.md)

## 🚩 Genel Bakış

<div align="center">
<img src="https://github.com/elizaOS/eliza/blob/develop/docs/static/img/eliza_diagram.png" alt="Eliza Diagram" width="100%" />
</div>

## ✨ Özellikler

- 🛠️ Tam donanımlı Discord, Twitter ve Telegram bağlantıları
- 🔗 Tüm modeller için destek (Llama, Grok, OpenAI, Anthropic, vb.)
- 👥 Çoklu-ajan ve oda desteği
- 🛠️ Discord, X (Twitter) ve Telegram için tam donanımlı bağlayıcılar
- 🔗 Tüm modelleri destekler (Llama, Grok, OpenAI, Anthropic, Gemini, etc.)
- 👥 Çoklu agent ve oda desteği
- 📚 Belgelerinizi kolayca içe aktarın ve etkileşime geçin
- 💾 Geri çağrılabilir hafıza ve belge deposu
- 🚀 Yüksek düzeyde genişletilebilir - kendi eylemlerinizi ve istemcilerinizi oluşturun
- ☁️ Birçok modeli destekler (yerel Llama, OpenAI, Anthropic, Groq, vb.)
- 📦 Hemen çalışır!
- 💾 Geri alınabilir hafıza ve belge deposu
- 🚀 Kolayca genişletilebilir - Kendi işlemlerinizi ve istemcilerinizi oluşturun
- 📦 Hızlı çalışır!

## Video Tutorials

## 🎯 Kullanım Alanları
[AI Agent Dev School](https://www.youtube.com/watch?v=ArptLpQiKfI&list=PLx5pnFXdPTRzWla0RaOxALTSTnVq53fKL)

- 🤖 Sohbet Botları
- 🕵️ Otonom Ajanlar
- 📈 İş Süreçleri Yönetimi
- 🎮 Video Oyun NPC'leri (Oyuncu Olmayan Karakter)
- 🧠 Alım Satım
## 🎯 Use Cases

- 🤖 Sohbet botları
- 🕵️ Otonom agentlar
- 📈 İş yönetimi
- 🎮 Video oyunu NPC'leri
- 🧠 Trading

## 🚀 Hızlı Başlangıç

Expand All @@ -37,56 +50,143 @@
- [Node.js 23+](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm)
- [pnpm](https://pnpm.io/installation)

> **Windows Kullanıcıları İçin Not:** [WSL 2](https://learn.microsoft.com/en-us/windows/wsl/install-manual) gereklidir
### .env Dosyasını Düzenleyin
> **Windows Kullanıcıları** [WSL 2](https://learn.microsoft.com/en-us/windows/wsl/install-manual) kullanmalıdır.
.env.example dosyasını .env olarak kopyalayın ve uygun değerleri doldurun
### Başlangıç Şablonunu Kullanın (Önerilir)

```
```bash
git clone https://github.com/elizaos/eliza-starter.git
cd eliza-starter
cp .env.example .env
pnpm i && pnpm build && pnpm start
```

### Elizayı manual olarak başlar (Sadece ne yaptığınızı biliyorsanız önerilir)

#### Son yayınlanan versiyonu kontrol edin

```bash
# Repositoryi kopyala
git clone https://github.com/elizaos/eliza.git

# Proje hızlı gelişiyor, yani son versiyonu kontrol etmeniz önerilir
git checkout $(git describe --tags --abbrev=0)
# Üstteki komut işe yaramadıysa bunu deneyebilirsin:
# git checkout $(git describe --tags `git rev-list --tags --max-count=1`)
```

### Karakter Dosyasını Düzenleyin
#### .env dosyasını düzenleyin

1. Varsayılan karakteri değiştirmek için `packages/core/src/defaultCharacter.ts` dosyasını açın
.env.example dosyasını .env olarak kopyalayın ve uygun değerleri doldurun.

2. Özel karakterleri yüklemek için:
- `pnpm start --characters="path/to/your/character.json"` komutunu kullanın
- Birden fazla karakter dosyası aynı anda yüklenebilir
```
cp .env.example .env
```

### Eliza'yı Başlatın
Not: .env opsiyoneldir. Birden fazla farklı agent kullanmayı planlıyorsanız karakterinizi direkt olarak JSON dosyası üzerinden inşa edebilirsiniz

.env dosyasını ve karakter dosyasını ayarladıktan sonra, botu aşağıdaki komutla başlatabilirsiniz:
#### Eliza'yı Başlatın

```bash
pnpm i
pnpm build
pnpm start

# Proje hızlı gelişiyor, projeye geri döndüğünüzde bazen projeyi temizlemeniz gerekebilir
# Proje hızlı gelişiyor, bazen projeye geri döndüğünüzde projeyi temizlemeniz gerekebilir
pnpm clean
```

### Tarayıcı Üzerinden Etkileşime Geçin

Agent çalıştığında, sonunda "pnpm start:client " komutunu çalıştırmanız gerektiğini belirten bir mesaj görmelisiniz.

Başka bir terminal açın, aynı dizine gidin, aşağıdaki komutu çalıştırın ve ardından agentla sohbet etmek için URL'yi takip edin..

```bash
pnpm start:client
```

Ardından Eliza'nızı nasıl özelleştireceğinizi öğrenmek için [Dokümantasyon](https://elizaos.github.io/eliza/)'u okuyun .

---

### Eliza'yı Otomatik Olarak Başlatın

Başlatma komutu Eliza'yı otomatik olarak kurup başlatmanızı sağlar:

```bash
sh scripts/start.sh
```

Başlatma komutunu kullanma, karakter yönetimi ve sorun giderme dahil ayrıntılı talimatlar için [Başlatma Komutu Kılavuzu](./docs/docs/guides/start-script.md)'nu kullanın.

> **Not**: Başlatma komutu tüm bağımlılıkları, ortam kurulumunu ve karakter yönetimini otomatik olarak halleder..
---

### Karakteri Güncelle

1. Varsayılan karakteri değiştirmek için `packages/core/src/defaultCharacter.ts` dosyasını açın. Yorumu kaldırın ve düzenleyin.

2. Özel karakterleri yükle:
- `pnpm start --characters="path/to/your/character.json"` komutunu kullan
- Aynı anda birden fazla karakter dosyası yüklenebilir
3. X (Twitter) ile bağlantı kurun
- Karakter dosyasındaki `"clients": []` ifadesini `"clients": ["twitter"]` olarak değiştirin

---

#### Ek Gereksinimler

Sharp'ı yüklemeniz gerekebilir. Başlatma sırasında bir hata görürseniz, aşağıdaki komutla yüklemeyi deneyin:
Sharp'ı yüklemeniz gerekebilir. Başlatırken bir hata görürseniz, aşağıdaki komutla yüklemeyi deneyin:

```
pnpm install --include=optional sharp
```

---

### Gitpod ile Eliza'yı Başlatın

[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/elizaos/eliza/tree/main)

---

### Tek Tıkla Eliza'yı Başlatın

Eliza'yı tek tıkla başlatmak için [Fleek](https://fleek.xyz/eliza/) kullanın. Bu, Eliza'yı geliştiriciler dışındaki kişilere açar ve agentınızı oluşturmak için aşağıdaki seçenekleri sunar:
1. Bir şemyala başlama
2. Karakter dosyasını sıfırdan oluşturma
3. Önceden hazırlanmış karakter dosyasını yükleyin

Başlamak için [buraya](https://fleek.xyz/eliza/) tıkla!

---

### Topluluk ve İletişim

- [GitHub Issues](https://github.com/elizaos/eliza/issues). Buna uygundur: Eliza kullanırken karşılaştığınız hatalar ve özellik önerileri.
- [Discord](https://discord.gg/ai16z). Buna uygundur: Uygulamalarınızı paylaşmak ve toplulukla vakit geçirmek.
- Karşılaştığınız hatalar ve yapmak istediğiniz öneriler için [GitHub Issues](https://github.com/elizaos/eliza/issues)'u kullanabilirsiniz.
- Uygulamalarınızı paylaşmak ve toplulukla vakit geçirmek için [Discord](https://discord.gg/ai16z)'u kullanabilirsiniz.

## Atıf

Artık Eliza OS hakkında bir [makale](https://arxiv.org/pdf/2501.06781) var ve bu makaleye şu şekilde atıfta bulunabilirsiniz:
```bibtex
@article{walters2025eliza,
title={Eliza: A Web3 friendly AI Agent Operating System},
author={Walters, Shaw and Gao, Sam and Nerd, Shakker and Da, Feng and Williams, Warren and Meng, Ting-Chien and Han, Hunter and He, Frank and Zhang, Allen and Wu, Ming and others},
journal={arXiv preprint arXiv:2501.06781},
year={2025}
}
```

## Katkıda Bulunanlar

<a href="https://github.com/elizaos/eliza/graphs/contributors">
<img src="https://contrib.rocks/image?repo=elizaos/eliza" />
<img src="https://contrib.rocks/image?repo=elizaos/eliza" alt="Eliza project contributors" />
</a>


## Yıldız Geçmişi

[![Star History Chart](https://api.star-history.com/svg?repos=elizaos/eliza&type=Date)](https://star-history.com/#elizaos/eliza&Date)
51 changes: 32 additions & 19 deletions packages/core/src/generation.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1165,10 +1165,30 @@ export async function generateText({

case ModelProviderName.VENICE: {
elizaLogger.debug("Initializing Venice model.");
const venice = createOpenAI({

const bypass = parseBooleanFromText(
runtime.getSetting("BYPASS_VENICE_SYSTEM_PROMPT")
)
? async (input: RequestInfo | URL, init?: RequestInit): Promise<Response> => {
const options: RequestInit = { ...init };
if (options?.body) {
const body = JSON.parse(options.body as string);
body.venice_parameters = {
include_venice_system_prompt: false
};
options.body = JSON.stringify(body);
}
return runtime.fetch(input, options);
}
: undefined;

const veniceConfig = {
apiKey: apiKey,
baseURL: endpoint,
});
...(bypass ? { fetch: bypass } : {})
};

const venice = createOpenAI(veniceConfig);

const { text: veniceResponse } = await aiGenerateText({
model: venice.languageModel(model),
Expand All @@ -1183,17 +1203,10 @@ export async function generateText({
maxSteps: maxSteps,
maxTokens: max_response_length,
});

// console.warn("veniceResponse:")
// console.warn(veniceResponse)

//rferrari: remove all text from <think> to </think>\n\n
response = veniceResponse.replace(
/<think>[\s\S]*?<\/think>\s*\n*/g,
""
);
// console.warn(response)

// response = veniceResponse;
response = veniceResponse
.replace(/<think>[\s\S]*?<\/think>\s*\n*/g, '');
elizaLogger.debug("Received response from Venice model.");
break;
}
Expand Down Expand Up @@ -1954,13 +1967,13 @@ export const generateImage = async (
seed: data.seed ?? 6252023,
...(runtime.getSetting("FAL_AI_LORA_PATH")
? {
loras: [
{
path: runtime.getSetting("FAL_AI_LORA_PATH"),
scale: 1,
},
],
}
loras: [
{
path: runtime.getSetting("FAL_AI_LORA_PATH"),
scale: 1,
},
],
}
: {}),
};

Expand Down

0 comments on commit a1ec32f

Please sign in to comment.