Skip to content

Commit

Permalink
development > main (#418)
Browse files Browse the repository at this point in the history
* Chinese readme (#415)

* jpn.json

* update ja.json

* readme in chinese

* translate ja (#414)

* jpn.json

* update ja.json

* translate/de

* translate/zh

* translate/zh

* 3.19.21

---------

Co-authored-by: BitStrawber <[email protected]>
Co-authored-by: ZhongGs <[email protected]>
  • Loading branch information
3 people authored Dec 9, 2024
1 parent 0e8af6e commit 1f2727b
Show file tree
Hide file tree
Showing 7 changed files with 355 additions and 3 deletions.
79 changes: 79 additions & 0 deletions README.zh-CN.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
# twinny
VScode的免费私有AI插件

- [Ollama](https://github.com/jmorganca/ollama)
- [llama.cpp](https://github.com/ggerganov/llama.cpp)
- [oobabooga/text-generation-webui](https://github.com/oobabooga/text-generation-webui)
- [LM Studio](https://github.com/lmstudio-ai)
- [LiteLLM](https://github.com/BerriAI/litellm)
- [Open WebUI](https://github.com/open-webui/open-webui)

## 🚀 开始使用
访问[quick start guide](https://twinnydotdev.github.io/twinny-docs/zh-cn/general/quick-start/)开始使用.

## 核心功能

### 代码自动补全
实时获取AI代码建议,让twinny自动补全你的代码。
![Fill in the Middle Example](https://github.com/rjmacarthy/twinny/assets/5537428/69f567c0-2700-4474-b621-6099255bc87b)

### 基于代码进行智能聊天
通过边栏处理代码: 获取函数解释,生成测试,请求重构等。
<img src="https://github.com/user-attachments/assets/464c2762-1da7-4ff7-a3fd-c8703566924d" width="800"/>


### 附加功能
- 离线与在线运行
- 高度可定制的 FIM 和聊天 API 端点
- 保存聊天记录
- 满足OpneAI的API标准
- 支持单行或多行填空式补全
- 可定制的提示模板
- 从暂存的更改生成 git 提交消息
- 通过 Visual Studio Code 扩展市场轻松安装
- 可定制的设置,用于 API 提供商、模型名称、端口号和路径
- 与 Ollama、llama.cpp、oobabooga 和 LM Studio API 兼容
- 直接在编辑器中接受代码解决方案
- 从代码块创建新文档
- 查看代码块的并排差异
- 以全屏模式打开聊天
- 复制生成的代码解决方案块
- 工作区嵌入,用于上下文感知的 AI 助力
- 连接到 Symmetry 网络,进行 P2P AI 推理
- 成为 Symmetry 网络的提供商,与世界分享您的计算资源

### 工作区嵌入
使用工作区嵌入增强您的编码体验,获得上下文感知的 AI 助力。
- **嵌入您的整个工作区**: 只需单击即可轻松嵌入您的整个工作区。
- **上下文感知的响应**: twinny 使用您的代码库的相关部分,提供更准确和上下文的答案。
- **可定制的嵌入提供者**: 默认情况下,使用 Ollama 嵌入(all-minilm:latest),但支持各种提供者。
- **可调整的相关性**: 微调重新排名概率阈值,以控制 AI 响应中上下文的包含。
- **切换嵌入上下文**: 轻松在每次消息中使用或不用嵌入上下文之间切换。

### Symmetry 网络
[Symmetry](https://twinny.dev/symmetry)是一个去中心化的点对点网络工具,旨在为 AI 推理提供计算资源的民主化访问。主要功能包括:

- 资源共享: 用户可以提供或寻求计算能力,用于各种 AI 任务。
- 直接连接: 在用户之间启用安全、点对点的连接。
- Visual Studio Code 集成: Twinny 在 VS Code 中内置了直接作为对等体或提供者连接的功能。
- 公共提供者访问:用户可以利用 Symmetry 网络上其他用户的公共模型。

Symmetry 旨在为开发人员和研究人员提供更易于访问和高效的 AI 推理。

客户端源代码是开源的,可以在以下链接[获取](https://github.com/twinnydotdev/symmetry-core).

## 已知问题
访问Github[问题页面](https://github.com/rjmacarthy/twinny/issues) 查找已知问题和故障排除。

## 贡献
有兴趣贡献吗?在[Twitter](https://x.com/twinnydotdev)上联系我, 在问题中描述你的更改并在准备好时提交PR. Twinny 是在 MIT 许可下开源的。有关更多详细信息,请参阅 [LICENSE](https://github.com/rjmacarthy/twinny/blob/master/LICENSE)

## 支持 Twinny
感谢您使用 Twinny!
该项目将始终是免费且开源的。如果您觉得它对您有所帮助,请考虑通过小额捐赠来表达您的感谢 <3
Bitcoin: `1PVavNkMmBmUz8nRYdnVXiTgXrAyaxfehj`

关注我的X账号获得最新的更新 https://x.com/rjmacarthy

## 免责声明
Twinny 正在积极开发和提供“原样”。功能可能会在更新之间有所不同。
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "twinny",
"displayName": "twinny - AI Code Completion and Chat",
"description": "Locally hosted AI code completion plugin for vscode",
"version": "3.19.20",
"version": "3.19.21",
"icon": "assets/icon.png",
"keywords": [
"code-inference",
Expand Down
91 changes: 91 additions & 0 deletions src/webview/assets/locales/de.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
{
"accept-solution": "Akzeptiere Lösung",
"api-key-placeholder": "Geben Sie hier Ihren API-Schlüssel ein",
"api-key": "API-Schlüssel",
"api-path-placeholder": "Geben Sie einen Hostnamen ein, z.B. 'localhost'",
"api-path": "API-Pfad",
"applicable-ollama": "Für einige Anbieter wie Ollama anwendbar",
"auto-connect-as-provider": "Automatisch als Anbieter verbinden",
"automatic": "Automatisch",
"cancel-edit": "Bearbeitung abbrechen",
"cancel": "Abbrechen",
"chat": "Chat",
"clear-conversations": "Unterhaltungen löschen",
"connect": "Verbinden",
"connected": "Verbunden!",
"connecting": "Verbindung wird hergestellt...",
"connection-failed": "Verbindung fehlgeschlagen! Bitte überprüfen Sie Ihre Verbindung und versuchen Sie es erneut.",
"consumer-connection": "Kundenverbindung",
"conversation-history": "Gesprächsverlauf",
"copy-code": "Code kopieren",
"copy-provider": "Anbieter kopieren",
"delete-message": "Nachricht löschen",
"delete-provider": "Anbieter löschen",
"disconnect": "Trennen",
"edit-default-templates-description": "Bearbeiten Sie die Standardvorlagen, die in der Twinny-Erweiterung verwendet werden.",
"edit-default-templates": "Standardvorlagen bearbeiten",
"edit-message": "Nachricht bearbeiten",
"edit-provider": "Anbieter bearbeiten",
"embed-documents": "Dokumente einbetten",
"embedding-provider": "Anbieter einbetten",
"fim-template": "FIM-Vorlage",
"fim": "Füll-in-Mitte",
"hostname-placeholder": "Geben Sie einen Hostnamen ein, z.B. 'localhost'",
"hostname": "Hostname",
"label-placeholder": "Geben Sie eine Beschriftung für Ihren Anbieter ein.",
"label": "Beschriftung",
"loading-available-models": "Verfügbare Modelle werden geladen...",
"max-chunk-size": "Maximale Stückgröße",
"min-chunk-size": "Minimale Stückgröße",
"model-name-placeholder": "Geben Sie einen Modellnamen ein, z.B. 'llama3'",
"model-name": "Modellname",
"new-conversation": "Neue Unterhaltung",
"new-document": "Neues Dokument",
"no-connections-found": "Keine Verbindungen gefunden. Bitte fügen Sie eine neue Verbindung hinzu, um zu beginnen.",
"no-result": "Kein Ergebnis",
"nothing-to-see-here": "Hier gibt es nichts zu sehen.",
"number-code-filepaths": "Anzahl der als Kontext zu verwendenden Dateipfade.",
"number-code-snippets": "Anzahl der als Kontext zu verwendenden Code-Schnipsel.",
"open-diff": "Differenz-Ansicht öffnen",
"open-template-editor": "Vorlagen-Editor öffnen",
"overlap-size": "Überlappungsgröße",
"owner-repo-name": "Dieser Tab hilft Ihnen, Pull Requests in Ihrem Repository zu überprüfen, geben Sie den Besitzer und Repository-Namen ein, um zu beginnen. Derzeit wird nur GitHub unterstützt, setzen Sie Ihren GitHub-Token in der Einstellungen, um zu beginnen.",
"path": "Pfad",
"placeholder": "Wie kann Twinny Ihnen heute helfen?",
"port-placeholder": "Geben Sie eine Portnummer ein, z.B. '11434'",
"port": "Port",
"protocol": "Protokoll",
"provider-connection": "Anbieterverbindung",
"provider-name": "Anbietername",
"provider-placeholder": "Geben Sie einen Anbieternamen ein",
"provider-type": "Anbietertyp",
"provider": "Anbieter",
"providers": "Anbieter",
"pull-requests": "Pull Requests",
"regenerate-message": "Nachricht neu generieren",
"relevant-code-snippets": "Relevante Code-Schnipsel",
"relevant-file-paths": "Relevante Dateipfade",
"repository-level": "Repositoryebene",
"rerank-probability-threshold": "Wahrscheinlichkeitsschwelle für Neusortierung",
"rerank-threshold-description": "Je niedriger der Schwellenwert, desto wahrscheinlicher, dass Ergebnisse enthalten sind.",
"rerank-threshold": "Neusortierungsschwelle",
"reset-providers": "Anbieter zurücksetzen",
"reset-to-default": "Auf Standard zurücksetzen",
"review-pull-requests": "Pull Requests überprüfen",
"save-edit": "Bearbeitung speichern",
"save": "Speichern",
"scroll-down": "Nach unten scrollen",
"share-gpu-resources": "Sie können Ihre GPU-Ressourcen auch teilen, indem Sie sich als Anbieter mit Symmetry verbinden, indem Sie Ihre aktive Twinny-Anbieterkonfiguration verwenden. Alle Verbindungen sind peer-to-peer, verschlüsselt und sicher.",
"status": "Status",
"stop-generation": "Generierung stoppen",
"symmetry-description": "Symmetry ist ein peer-to-peer AI-Schlussfolgerungsnetzwerk, das es Benutzern ermöglicht, sich sicher und direkt miteinander zu verbinden. Wenn Sie sich als Verbraucher verbinden, wird Symmetry Ihnen basierend auf Ihrer Modellauswahl einen Anbieter zuweisen.",
"symmetry-inference-network": "Symmetry-Schlussfolgerungsnetzwerk",
"template-settings-description": "Wählen Sie die Vorlagen, die Sie in der Chat-Oberfläche verwenden möchten.",
"template-settings": "Vorlagen-Einstellungen",
"thinking": "Überlege...",
"toggle-auto-scroll": "Auto-Scroll ein-/ausschalten",
"toggle-embedding-options": "Einbettungsoptionen ein-/ausschalten",
"toggle-provider-selection": "Anbieterauswahl umschalten",
"type": "Typ"
}

1 change: 1 addition & 0 deletions src/webview/assets/locales/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -88,3 +88,4 @@
"toggle-provider-selection": "Toggle provider selection",
"type": "Type"
}

90 changes: 90 additions & 0 deletions src/webview/assets/locales/ja.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
{
"accept-solution": "解決方案を受け入れる",
"api-key-placeholder": "ここにAPIキーを入力してください",
"api-key": "APIキー",
"api-path-placeholder": "ホスト名を入力してください。例: 'localhost'",
"api-path": "APIパス",
"applicable-ollama": "Ollamaなどのインターフェースプロバイダーに適用されます",
"auto-connect-as-provider": "インターフェースプロバイダーとして自動的に接続",
"automatic": "自動化",
"cancel-edit": "編集をキャンセル",
"cancel": "キャンセル",
"chat": "チャット",
"clear-conversations": "対話をクリア",
"connect": "接続",
"connected": "接続しました!",
"connecting": "接続中...",
"connection-failed": "接続に失敗しました!接続を確認して再度お試しください。",
"consumer-connection": "ユーザー接続",
"conversation-history": "対話履歴",
"copy-code": "コードをコピー",
"copy-provider": "インターフェースプロバイダーをコピー",
"delete-message": "メッセージを削除",
"delete-provider": "インターフェースプロバイダーを削除",
"disconnect": "切断",
"edit-default-templates-description": "Twinny拡張で使用されるデフォルトテンプレートを編集します。",
"edit-default-templates": "デフォルトテンプレートを編集",
"edit-message": "メッセージを編集",
"edit-provider": "インターフェースプロバイダーを編集",
"embed-documents": "文書を埋め込む",
"embedding-provider": "インターフェースプロバイダーを埋め込む",
"fim-template": "FIMテンプレート",
"fim": "中間充填",
"hostname-placeholder": "ホスト名を入力してください。例: 'localhost'",
"hostname": "ホスト名",
"label-placeholder": "インターフェースプロバイダーのラベルを入力してください。",
"label": "ラベル",
"loading-available-models": "利用可能なモデルを読み込んでいます...",
"max-chunk-size": "最大チャンクサイズ",
"min-chunk-size": "最小チャンクサイズ",
"model-name-placeholder": "モデル名を入力してください。例: 'llama3'",
"model-name": "モデル名",
"new-conversation": "新しい対話",
"new-document": "新しい文書",
"no-connections-found": "接続が見つかりません。新しい接続を追加して開始してください。",
"no-result": "結果なし",
"nothing-to-see-here": "ここには何もありません。",
"number-code-filepaths": "文脈として使用されるファイルパスの数。",
"number-code-snippets": "文脈として使用されるコードスニペットの数。",
"open-diff": "差分比較ビューを開く",
"open-template-editor": "テンプレートエディターを開く",
"overlap-size": "オーバーラップサイズ",
"owner-repo-name": "このラベルは、あなたのリポジトリ内のプルリクエストをレビューするのに役立ちます。所有者とリポジトリ名を入力して開始してください。現在はGitHubのみサポートされており、GitHubトークンを設定して開始してください。",
"path": "パス",
"placeholder": "Twinnyは今日どのようにお手伝いしましょうか?",
"port-placeholder": "ポート番号を入力してください。例: '11434'",
"port": "ポート",
"protocol": "プロトコル",
"provider-connection": "インターフェースプロバイダー接続",
"provider-name": "インターフェースプロバイダー名",
"provider-placeholder": "インターフェースプロバイダー名を入力してください",
"provider-type": "インターフェースプロバイダータイプ",
"provider": "インターフェースプロバイダー",
"providers": "インターフェースプロバイダー",
"pull-requests": "プルリクエスト",
"regenerate-message": "メッセージを再生成",
"relevant-code-snippets": "関連コードスニペット",
"relevant-file-paths": "関連ファイルパス",
"repository-level": "リポジトリレベル",
"rerank-probability-threshold": "再ランキング確率閾値",
"rerank-threshold-description": "閾値が低いほど、結果が含まれる可能性が高くなります。",
"rerank-threshold": "再ランキング閾値",
"reset-providers": "インターフェースプロバイダーをリセット",
"reset-to-default": "デフォルトに戻す",
"review-pull-requests": "プルリクエストをレビュー",
"save-edit": "編集を保存",
"save": "保存",
"scroll-down": "下にスクロール",
"share-gpu-resources": "アクティブなTwinnyインターフェースプロバイダー構成をインターフェースプロバイダーとして接続することで、GPUリソースを共有することもできます。すべての接続はピアツーピアで、エンドツーエンド暗号化されており安全です。",
"status": "状態",
"stop-generation": "生成を停止",
"symmetry-description": "SymmetryはピアツーピアのAI推論ネットワークで、ユーザー間の安全で直接の接続を可能にします。消費者として接続すると、Symmetryはあなたのモデル選択に基づいてインターフェースプロバイダーをマッチングします。",
"symmetry-inference-network": "Symmetry推論ネットワーク",
"template-settings-description": "チャットインターフェースで使用するテンプレートを選択してください。",
"template-settings": "テンプレート設定",
"thinking": "考える...",
"toggle-auto-scroll": "自動スクロールをオン/オフ",
"toggle-embedding-options": "埋め込みオプションをオン/オフ",
"toggle-provider-selection": "インターフェースプロバイダー選択をオン/オフ",
"type": "タイプ"
}
Loading

0 comments on commit 1f2727b

Please sign in to comment.