Skip to content

Commit

Permalink
Merge pull request #126 from bjwswang/agi
Browse files Browse the repository at this point in the history
fix: remove minio from arcadia charts which use kubebb componentplan;…
  • Loading branch information
bjwswang authored Oct 19, 2023
2 parents 712af44 + 66a98a9 commit b230ceb
Show file tree
Hide file tree
Showing 6 changed files with 68 additions and 72 deletions.
35 changes: 35 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
<!-- Thanks for sending a pull request! Here are some tips for you:
1. If this is your first time, please read our contributor guidelines: https://github.com/kubeagi/arcadia/blob/main/CONTRIBUTING.md
2. Ensure you have added or ran the appropriate tests for your PR
-->

#### What type of PR is this?

<!--
Add one of the following kinds:
/kind bug
/kind cleanup
/kind documentation
/kind feature
Optionally add one or more of the following kinds if applicable:
/kind api-change
/kind deprecation
/kind failing-test
/kind flake
/kind regression
-->

#### What this PR does / why we need it

#### Which issue(s) this PR fixes
<!--
*Automatically closes linked issue when PR is merged.
Usage: `Fixes #<issue number>`, or `Fixes (paste link of issue)`.
_If PR is about `failing-tests or flakes`, please post the related issues/tests in a comment and do not use `Fixes`_*
-->
Fixes #

#### Special notes for your reviewer
89 changes: 30 additions & 59 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,72 +1,49 @@
# Arcadia
# Arcadia: A diverse, simple, and secure one-stop LLMOps platform

Our vision is to make it easier for cloud-native applications to integrate with AI, thereby making the cloud more intelligent and impactful. We provides two ways for users to develop AI applications :point_down:
<div align="left">
<p>
<a href="https://opensource.org/licenses/apache-2-0">
<img alt="License: Apache-2.0" src="https://img.shields.io/github/license/kubeagi/arcadia" />
</a>
<a href="https://opensource.org/licenses/apache-2-0">
<img alt="Go Report Card" src="https://goreportcard.com/badge/kubeagi/arcadia?style=flat-square" />
</a>
</p>
</div>

- :fire:[Arcadia Operator](https://github.com/kubeagi/arcadia/tree/main/charts/arcadia) provides comprehensive features to develop,build,publish AI applications
- `Dataset`: automatically process `Files` with embedding models,then store vectors into vector stores
- `LLMs`
- :cloud: LLM service provider
- Local distributed LLMs(OpenAI API compatible)
- `Prompts`: call llm and keep results
- `Application`: provide templates and tools to `build,publish`
- ...
- :fire:[Pure Golang toolchains](#pure-go-toolchains) to develop with your own needs
## What is Arcadia?

## Quick start
**Arcadia** comes from [Greek mythology](https://www.greekmythology.com/Myths/Places/Arcadia/arcadia.html)(a tranquil and idyllic region, representing harmony, serenity, and natural beauty).We aim to help everyone find a more perfect integration between humans and AI.

1. Install kubebb-core
To archieve this goal, we provides this one-stop LLMOps solution:

```
helm repo add kubebb https://kubebb.github.io/components/
helm repo update
helm install -nkubebb-system --create-namespace kubebb-core kubebb/kubebb-core
```

2. Install arcadia operator

We recommend that install arcadia under namespace `arcadia`

```shell
helm repo add arcadia https://kubeagi.github.io/arcadia
helm repo update
helm install --namespace arcadia --create-namespace arcadia arcadia/arcadia
```
- Dataset Management: storage/real-time data,multimodal,pre-processing,vectorization
- Models Management: local/online LLMs(development,training,deployment),inference acceleration
- Application Management: development,optimization,deployment with visual editor

3. Add a LLM along with the auth secret
Furthermore,we can easily host **Arcadia** at any kubernetes cluster as production ready by integrating [kubebb](https://github.com/kubebb)(A kubernetes building blocks),

> Update apiKey(`Base64 encoded`) in [secret](https://github.com/kubeagi/arcadia/blob/main/config/samples/arcadia_v1alpha1_llm.yaml#L7).
## Architecture

```shell
kubectl apply -f config/samples/arcadia_v1alpha1_llm.yaml
```
Our design and development in Arcadia design follows operator pattern which extends kubernetes APIs.

4. Create a prompt
![Arch](./assets/kubeagi.drawio.png)

```shell
kubectl apply -f config/samples/arcadia_v1alpha1_prompt.yaml
```

After the prompt got created, you can see the prompt in the following command:

```shell
kubectl get prompt prompt-zhipuai-sample -oyaml
```

If no error is found, you can use this command to get the prompt response data.

```shell
kubectl get prompt prompt-zhipuai-sample --output="jsonpath={.status.data}" | base64 --decode
```
## Install

Output:
> Pre-requisites
> - [kind]( https://kind.sigs.k8s.io/docs/user/quick-start/#installation) (Optional if you already have a k8s cluster)
> - [helm](https://helm.sh/docs/intro/install/)
```shell
{"code":200,"data":{"choices":[{"content":"\" Kubernetes (also known as K8s) is an open-source container orchestration system for automating the deployment, scaling, and management of containerized applications. It was originally designed by Google, and is now maintained by the Cloud Native Computing Foundation (CNCF).\\n\\nKubernetes provides a platform-as-a-service (PaaS) model, which allows developers to deploy, run, and scale containerized applications with minimal configuration and effort. It does this by abstracting the underlying infrastructure and providing a common set of APIs and tools that can be used to deploy, manage, and scale applications consistently across different environments.\\n\\nKubernetes is widely adopted by organizations of all sizes and has a large, active community of developers contributing to its continued development and improvement. It is available on a variety of platforms, including Linux, Windows, and 移动设备,and can be deployed on-premises, in the cloud, or in a hybrid environment.\"","role":"assistant"}],"request_id":"7865480399259975113","task_id":"7865480399259975113","task_status":"SUCCESS","usage":{"total_tokens":203}},"msg":"操作成功","success":true}
helm repo add arcadia https://kubeagi.github.io/arcadia
helm repo update
helm install --namespace arcadia --create-namespace arcadia arcadia/arcadia
```

## CLI

We provide a Command Line Tool `arctl` to interact with `arcadia` and `LLMs`. See [here](./arctl/README.md) for more details.
We provide a Command Line Tool `arctl` to interact with `arcadia`. See [here](./arctl/README.md) for more details.

- ✅ local dataset management

Expand All @@ -84,13 +61,7 @@ To enhace the AI capability in Golang, we developed some packages.Here are the e

-[ZhiPuAI(智谱 AI)](https://github.com/kubeagi/arcadia/tree/main/pkg/llms/zhipuai)
- [example](https://github.com/kubeagi/arcadia/blob/main/examples/zhipuai/main.go)
-[DashScope(灵积模型服务)](https://github.com/kubeagi/arcadia/tree/main/pkg/llms/dashscope), we now support
-[qwen-7b-chat(通义千问开源 7B 模型)](https://help.aliyun.com/zh/dashscope/developer-reference/tongyi-qianwen-7b-14b-quick-start)
-[qwen-14b-chat(通义千问开源 14B 模型)](https://help.aliyun.com/zh/dashscope/developer-reference/tongyi-qianwen-7b-14b-quick-star)
-[llama2-7b-chat-v2(LLaMa2 大语言模型 7B)](https://help.aliyun.com/zh/dashscope/developer-reference/quick-start-4)
-[llama2-13b-chat-v2(LLaMa2 大语言模型 13B)](https://help.aliyun.com/zh/dashscope/developer-reference/quick-start-4)
-[text-embedding-v1(通用文本向量 同步接口)](https://help.aliyun.com/zh/dashscope/developer-reference/text-embedding-api-details)
-[text-embedding-async-v1(通用文本向量 批处理接口)](https://help.aliyun.com/zh/dashscope/developer-reference/text-embedding-async-api-details)
-[DashScope(灵积模型服务)](https://github.com/kubeagi/arcadia/tree/main/pkg/llms/dashscope)
- see [example](https://github.com/kubeagi/arcadia/blob/main/examples/dashscope/main.go)

### Embeddings
Expand Down
1 change: 1 addition & 0 deletions assets/kubeagi.drawio

Large diffs are not rendered by default.

Binary file added assets/kubeagi.drawio.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 2 additions & 1 deletion charts/arcadia/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,12 @@ apiVersion: v2
name: arcadia
description: A Helm chart(KubeBB Component) for KubeAGI Arcadia
type: application
version: 0.1.6
version: 0.1.7
appVersion: "0.0.0"
keywords:
- kubeagi
- NativeAI
- LLMOps
sources:
- https://github.com/kubeagi/arcadia
maintainers:
Expand Down
12 changes: 0 additions & 12 deletions charts/arcadia/templates/minio.yaml

This file was deleted.

0 comments on commit b230ceb

Please sign in to comment.