Git Product home page Git Product logo

attu's Introduction

Attu

typescript downloads

Attu is an all-in-one milvus administration tool. With Attu, you can dramatically reduce the cost of managing milvus.

attu home view

Installation Guides

Before you begin, make sure that you have Milvus installed on either Zilliz Cloud or your own server.

Compatibility

Milvus Version Recommended Attu Version
2.4.x please try dev version
2.3.x v2.3.10
2.2.x v2.2.8
2.1.x v2.2.2

Running Attu from Docker

Here are the steps to start a container for running Attu:

docker run -p 8000:3000 -e MILVUS_URL={milvus server IP}:19530 zilliz/attu:v2.3.10

Make sure that the Attu container can access the Milvus IP address. After starting the container, open your web browser and enter http://{ Attu IP }:8000 to view the Attu GUI.

Optional Environment Variables for Running Attu Docker

Parameter Example Required Description
MILVUS_URL 192.168.0.1:19530 false Optional, Milvus server URL
ATTU_LOG_LEVEL info false Optional, sets the log level for Attu
ROOT_CERT_PATH /path/to/root/cert false Optional, path to the root certificate
PRIVATE_KEY_PATH /path/to/private/key false Optional, path to the private key
CERT_CHAIN_PATH /path/to/cert/chain false Optional, path to the certificate chain
SERVER_NAME your_server_name false Optional, name of your server
SERVER_PORT Server listen port false Optional, 3000 by default if unset

Please note that the MILVUS_URL should be an address that the Attu Docker container can access. Therefore, "127.0.0.1" or "localhost" will not work.

To run the Docker container with these environment variables, use the following command:

Attu SSL Example

docker run -p 8000:3000 \
-v /your-tls-file-path:/app/tls \
-e ATTU_LOG_LEVEL=info  \
-e ROOT_CERT_PATH=/app/tls/ca.pem \
-e PRIVATE_KEY_PATH=/app/tls/client.key \
-e CERT_CHAIN_PATH=/app/tls/client.pem \
-e SERVER_NAME=your_server_name \
zilliz/attu:dev

Custom Server Port Example

This command lets you run the docker container with host networking, specifying a custom port for the server to listen on

docker run --network host \
-v /your-tls-file-path:/app/tls \
-e ATTU_LOG_LEVEL=info  \
-e SERVER_NAME=your_server_name \
-e SERVER_PORT=8080 \
zilliz/attu:dev

Running Attu within Kubernetes

Before you begin, make sure that you have Milvus installed and running within your K8's Cluster. Note that Attu only supports Milvus 2.x.

Here are the steps to start a container for running Attu:

kubectl apply -f https://raw.githubusercontent.com/zilliztech/attu/main/attu-k8s-deploy.yaml

Make sure that the Attu pod can access the Milvus service. In the example provided this connects directly to my-release-milvus:19530. Change this based on the Milvus service name. A more flexible way to achieve this would be to introduce a ConfigMap. See this example for details.

Install Desktop application

If you prefer to use a desktop application, you can download the desktop version of Attu.

Build Docker Image Locally

  • Dev: yarn run build:dev
  • Release: yarn run build:release

FAQ

  • I can't log into the system

    Make sure that the IP address of the Milvus server can be accessed from the Attu container. #161

  • TBD

More Screenshots

Data view collection tree
attu attu
create collection vector search
attu attu

✨ Contributing Code

Thank you for your interest in contributing to Attu! Here's how you can build Attu locally to contribute code, test out the latest features, or try out an open PR:

Build the Server

  1. Fork and clone the Attu repository.
  2. Navigate to the server directory by running cd server in the terminal.
  3. Install dependencies by running yarn install.
  4. To start the server in development mode, run yarn start.
  5. Create a new branch for your PR by running git checkout -b my-branch.

Build the Client

  1. Fork and clone the Attu repository.
  2. Navigate to the client directory by running cd client in the terminal.
  3. Install dependencies by running yarn install.
  4. To start the server in development mode, run yarn start.
  5. Create a new branch for your PR by running git checkout -b my-branch.

Submitting a Pull Request

  1. Make changes and ensure that tests pass.
  2. Commit changes and push to your fork.
  3. Create a Pull Request targeting the main branch of Attu.

We appreciate your contributions to Attu, regardless of size. Thanks for supporting the project!

❓ Do you have any questions or problems?

If you encounter any bugs or want to request a new feature, please create a GitHub issue. It's important to check if someone else has already created an issue for the same problem before submitting a new one.

Useful Examples

Milvus Typescript Examples:This repo provides some simple React apps based on Next.js.

Name Demo Model
semantic-search-example https://zilliz-semantic-search-example.vercel.app all-MiniLM-L6-v2
semantic-image-search clip-vit-base-patch16
semantic-image-search-client https://zilliz-semantic-image-search-client.vercel.app clip-vit-base-patch16

Userful links

Here are some helpful resources to get you started with Milvus:

  • Milvus documentation: Here, you can find detailed information on how to use Milvus, including installation instructions, tutorials, and API documentation.
  • Milvus python SDK: The Python SDK allows you to interact with Milvus using Python. It provides a simple and intuitive interface for creating and querying vectors.
  • Milvus Java SDK: The Java SDK is similar to the Python SDK but designed for Java developers. It also provides a simple and intuitive interface for creating and querying vectors.
  • Milvus Go SDK: The Go SDK provides a Go API for Milvus. If you're a Go developer, this is the SDK for you.
  • Milvus Node SDK: The Node SDK provides a Node.js API for Milvus. If you're a Node.js developer, this is the SDK for you.
  • Feder: Feder is a JavaScript tool designed to aid in the comprehension of embedding vectors.

Community

💬 Join our vibrant community on the Milvus Discord where you can share your knowledge, ask questions and engage in meaningful conversations. It's not just about coding, it's about connecting with other like-minded individuals. Click the link below to join now!

license

attu's People

Contributors

alwayslove2013 avatar axiangcoding avatar b0n0r avatar bennu-li avatar chen-jingjie avatar czhen-zilliz avatar dependabot[bot] avatar hrbhot avatar iynewz avatar jayclifford345 avatar kateshaowanjou avatar keongalvin avatar locorichard avatar nameczz avatar nepko avatar scholliyt avatar shanghaikid avatar sutcalag avatar techgeniuswang avatar thedropzone avatar thyeezz avatar tumao727 avatar zhanshuyou avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

attu's Issues

When on K8s, use service address to connet

Today when I'm trying to connect to Attu, I'm using an IP address and port.
that's not a very good solution when it comes to a milvus cluster running on K8s, especially when using the milvus operator and not the helm charts.

I'm not able to connect to milvus when running a cluster using the IP address ( I tried the proxy service's IP adress).
anyways, I think that using the service address should be supported:
if I have a service address like:

milvus.default.svc.cluster.local:19530

there's no reason using it in my micro services (using milvus python sdk) will work, but not with attu.

Failed to delete selected data in Data Query

Describe the bug:

Users can not delete selected data in Data Query

Steps to reproduce:

  1. select some item in Data Query
    image

  2. click the "Delete button", and delete the selected data
    image

  3. attu shows that the deletion was successful

  4. refresh the attu,requery the data,In fact, the deletion was not successful.
    image

  5. Re-delete the selected data, The prompt error is as follows:
    image

Attu version:
v1.22.10

Attu version:

Unable to preview or query Bool field

Describe the bug:

In Data Preview or Data Query, fields whose data type is bool are not displayed!

Steps to reproduce:

  1. Create a collection with at least on field typed Bool
  2. Insert data (manually or automatically)
  3. Use Attu to preview or query data

Attu version:
tested on the following versions:

  • 2.1.4
  • 2.1.5-dev
  • 2.2.0

image
image
image

could attu support loading collection with setting replica_number

Describe the feature:
reload collection with setting replica_number on attu

Describe a specific use case for the feature:
when the collection has some problems, may be solved by reload collection, it's convenient to do it by attu. But now attu not supoport to reload with setting replica_number.

打开Attu 的user菜单栏报错,点击添加用户按钮报错

Describe the bug:
打开Attu 的user菜单栏报错,点击添加用户按钮报错

Steps to reproduce:
1.打开软件

2.点击左侧user菜单栏,右上角报错
Error: Error: 12 UNIMPLEMENTED: unknown method ListCredUsers for service milvus.proto.milvus.MilvusService

3.创建新用户时报错
Error: Error: 12 UNIMPLEMENTED: unknown method CreateCredential for service milvus.proto.milvus.MilvusService

Milvus version:
v 2.0.2

Attu version:
v 2.1.0

I got error when I upgrade attu from 2.1.2 to 2.1.4

Describe the bug:
When I upgrade attu from 2.1.2 to 2.1.4 with Milvus2.1.2, I can't use the "Data Preview" tab to get sample data.And I got the following error "Type allow all->0 inmemory->1"

image

The other information:

  1. collection is loaded and can be searched with sdk the attu;
  2. collection's index is hnsw and is created after all data is inserted.

Steps to reproduce:
1.
3.
4.

Attu version:
2.1.3

Attu version:

Attu cannot connect to milvus k8s cluster

The distributed version of milvus deployed by helm, attu is enabled by default. Refer to the official documentation https://milvus.io/cn/docs/v2.0.x/attu_install-helm.md to access cluster services by mapping ports to local. Through port mapping, 127.0.0.1 can access the milvus cluster, and from the cluster server, the milvus service can be accessed through 10.255.196.189. The attu service works by default, but a network error is displayed when adding a milvus connection.

2022-06-01_09-26
2022-06-01_00-23
2022-06-01_00-24
2022-06-01_00-25

The Entity Count is wrong after deleting a piece of data

Describe the bug:
The Entity Count is wrong after deleting a piece of data.

Steps to reproduce:

  1. the "cpp_collection" collection has 2 entities;
    image

  2. set the filters : "VECTOR_ID > 0", and do the search, find all the data
    image

  3. pick one piece of data ,and delete it.
    image

  4. the result shows ok
    image

  5. return the home page of zttu, find the Entity Count of "cpp_collection" is still 2, the right number should be 1
    image

  6. Checking the console log shows the following:
    uri : http://#host#:#port#/api/v1/collections
    response :
    image

Attu version:
2.0.5

Attu version:
2.0.5

can not start attu by npm package

Describe the bug:
can not start attu by npm package.

$ attu
Fontconfig warning: "/etc/fonts/fonts.conf", line 86: unknown element "blank"
Trace/breakpoint trap

Steps to reproduce:

  1. # rpm -ivh attu-2.1.1.x86_64.rpm
  2. $ attu
    Fontconfig warning: "/etc/fonts/fonts.conf", line 86: unknown element "blank"
    Trace/breakpoint trap

Attu version:
2.1.1

Page blocking

Describe the bug:
As shown, tapping the icon in the bottom left corner of the node view will cause the page to be obscured

Steps to reproduce:
1.
2.
3.

Attu version: 2.1.0

Attu version: 2.1.0
image

Display collection aliases

Milvus aliases are great for migrating indices without changing client code/config.
It would be nice if Attu could:

  • display them
  • use them in the dropdown in the vector search screen.

When loading one of the partitions, the status of collection shows an error

Describe the bug:
When loading one of the partitions, the status shows an error

Steps to reproduce:

  1. create three partitions in one collection, and insert data into each partition separately
    image

  2. load one of the partitions with python sdk

collection = Collection("sp_partiton") # Get an existing collection.
collection.load(["1"])

  1. return the home page of attu, and find that the status of "sp_partion" is wrong
    image

  2. check the console log of url "http://#host:port#/api/v1/collections" shows the following:
    image

Attu version:
2.0.5

Attu version:
2.0.5

testfd

Describe the bug:

Steps to reproduce:
1.
2.
3.

Attu version:

Attu version:

Can't built the string index of the Milvus 2.1.4

Describe the bug:

The string index of Milvus 2.1.4 has not been built. My table is empty. Neither ATTU nor Python code can build the string index normally. I have been waiting. The database files are growing continuously, but we haven't put data yet. (Installed by the k8s helm, the helm has updated milvus to the latest version.). The index of vectors can be builted normally.

Steps to reproduce:
1.
2.
3.

Attu version:
attu:v2.1.4
milvus:v2.1.4

image

query结果无法选择单项删除

Describe the bug:
1、点击query结果单选框,会选中所有结果。
2、点击一条query结果的单选框,后执行删除,接口响应OK,但无法删除数据
3、全选query结果,执行删除,无法删除数据

Steps to reproduce:
1.从左侧collection菜单进入,选择一个collection,load到内存
2.在选择的collection详情界面,输入query条件,点击Query
3.点击query结果其中一条的选择框
4.点击左上方删除图标

Attu version:
2.0.1

Copy failed in query page

Describe the bug:
When dim is large will cause copy failed
image

Steps to reproduce:

  1. create collection with large dim
  2. query data
  3. click copy, failed

Attu version:
v2.0.5

Attu version:

401 Unauthorized /api/v1/collections/statistics when try to expose web interface from local network to internet

Describe the bug:
I use nginx to proxy attu web interface in an internal network environment to internet, I get this error when click "Connect".

Steps to reproduce:

  1. My host IP is 192.168.171.232, with milvus port 19530, insight port 3000. My docker started with HOST_URL=https://attu.mydomain.com:13679 and MILVUS_URL=192.168.171.232:19530
  2. I installed nginx proxy for this host, expose port 13679 and use host name attu.mydomain.com with ssl on, and proxy it to 192.168.171.232:3000. here is my nginx conf:
server {
   listen       13679 ssl;
   server_name  attu.mydomain.com;
   root         /usr/share/nginx/html;
   ssl_certificate "/ssl/server.crt";
   ssl_certificate_key "/ssl/server.key";
   ssl_session_cache shared:SSL:1m;
   ssl_session_timeout  10m;
   ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
   ssl_prefer_server_ciphers on;
   location / {
           proxy_pass http://192.168.171.232:3000/;
           proxy_redirect default;
           add_header 'Access-Control-Allow-Origin' '*'; 
   }
}
  1. I can access the website https://attu.mydomain.com:13679 on internet and connect milvus returns 200, but after connected, when access /api/v1/collections/statistics, it returns 401 Unauthorized. The attu server logs is here:
POST 200 /api/v1/milvus/connect 106.541 ms @ Mon, 27 Dec 2021 09:54:01 GMT ::ffff:192.168.171.232 from undefined Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36 

GET /api/v1/collections/statistics 401 UnauthorizedError: Please connect milvus first

GET 401 /api/v1/collections/statistics 3.464 ms @ Mon, 27 Dec 2021 09:54:01 GMT ::ffff:192.168.171.232 from undefined Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36

The web browser POST to https://attu.mydomain.com:13679/api/v1/milvus/connect post data is:

{"address":"192.168.171.232:19530"}

and the server returns data is:

{"data":{"address":"192.168.171.232:19530"},"statusCode":200}

Fine way:
I can access it when in the local internet. change HOST_URL to http://192.168.171.232:3000, then everything is fine.

Attu version:
zilliz/attu:latest

Milvus version:
milvusdb/milvus:v2.0.0-rc8-20211104-d1f4106

BadRequestError: Connect milvus failed, check your milvus address.

Describe the bug:
attu can't connect to milvus ,return BadRequestError: Connect milvus failed, check your milvus address. try to connect milvus with milvus_cli will be ok on the same host.

Steps to reproduce:
1.docker run -p 8000:3000 -e HOST_URL=http://{ your machine IP }:8000 -e MILVUS_URL={your machine IP}:19530 zilliz/attu:latest
2.click the button try to connect to miluvs some times can connect, some time return back Connect milvus failed, check your milvus address
3.in the same time try to connect miluvs with milvus_cli can connect success,and list collections ok

Attu version:
zilliz/attu:latest

Attu version:
zilliz/attu:latest

Add setting Consistency Level in Attu

Describe the feature:
Milvus now supports specify Consistency Level while creating collection and performing search and query. Please add this feature to Attu.

Describe a specific use case for the feature:

test notification

Describe the bug:

Steps to reproduce:
1.
2.
3.

Attu version:

Attu version:

Unable to connect to Milvus-2.2.0 with Attu

Describe the bug:
I was installing the Milvus with attu using helm. Previously, in the version Milvus-2.1.4, there was no issue faced, but in Milvus-2.2.0, there is no option for the username and password and thus I cannot connect to Milvus through a graphical interface with the Milvus.
I have tested this with both attu version of 2.1.0 and 2.2.0. But the behavior is same.

Steps to reproduce:
I have been following this documentation https://milvus.io/docs/attu_install-helm.md

Following is the error that appears, when tried to connect.
image

Add boolean support

milvus supports boolean type, attu should support as well.

  • add boolean type on collection creation dialog
  • add boolean support on schema panel
  • add boolean support on query and search results.

Add interface to view milvus server version

Describe the feature:
Add interface to view milvus server version

Describe a specific use case for the feature:
Only after the user checks the version of the milvus server can they know which version of the sdk to use.

Incorrect Datatype Errpr

Describe the bug:
My searches are failing due to the nprobe paramter being the incorrect datatype. No matter what number I enter it fails with this error.

Steps to reproduce:

  1. Search on binary vector data (I used 1024 dim vector) with BIN_IVF_FLAT index
  2. Use the metric type TANIMOTO
  3. Set nprobe to any valid number, e.g. 1 or 200

Attu version:
2.1.5 - but this issue was occurring for me in other recent versions

Milvus version:
2.2.0

image

Screenshot 2022-11-29 at 12 21 00

attu 不能创建FLAT索引

1:Filter中根据条件搜索,范围太大了就搜索不出来,能不能加个limit条件
2:不能创建FLAT索引,按钮灰的
3:预览数据是否可以做到排序

Compaction

Describe the feature:

  • Display compaction state
  • Button to start compaction

Entity Count 数据不更新

Describe the bug:
已经Loaded Collections,正常查询有数据。然后通过JavaSDK 添加数据 milvusClient.insert(insertParam)。再查询也能查出新添加的数据,但 attu页面显示的Entity Count 数量没有加一。还是原来的数量。但在attu页面上查询数据又能查到。

Steps to reproduce:
1.
2.
3.

Attu version:
attu:v2.1.0
milvus:v2.1.0
Attu version:

Helm Chart of attu and milvus

Describe the feature:
I'd like to use both Milvus and Attu with minimal fuss. Helm chart is the solution.

Describe a specific use case for the feature:
Test cases and fast local experiments, as well as easier production usage.

the attu does not support the metric type "IP" in the "FLAT" mode

Describe the bug:
the attu does not support the metric type "IP" in the "FLAT" mode.
In fact, we can do this operation with the sdk.

Steps to reproduce:
1.
2ffe8ef8efdb752bfb9bb63c1b6c0cf

  1. we can not chose the Metric Type option "IP" in the "FLAT" mode

  2. In fact, we can do the "IP" search with the sdk.

Attu version:

v2.0.5

Attu version:

Attu cannot access milvus

Describe the bug:
Attu cannot access milvus

Steps to reproduce:
1.
2.
3.

Attu version:
94e6fc865dda326809642496f71a906
2d8d59ef57bfc135ff954aef1d4ceb1
helm install my-release milvus/milvus --set attu.enabled=true

kubectl edit svc my-release-milvus-attu
image

Attu version:

convert deb to rpm

https://milvus.io/docs/v2.0.x/attu_install-package.md
Using the deb package provided by the milvus official website, I got an error when converting the rpm package

Use the following command

alien --to-rpm --scripts attu_2.0.1_amd64.deb

get an error

Package build failed. Here's the log of the command (cd attu-2.0.1; rpmbuild --buildroot='/root/milvus_attu/attu-2.0.1' -bb --target x86_64 'attu-2.0.1-2.spec'):
错误:行 5:空的标签:Summary:
构建目标平台:x86_64
为目标x86_64构建

Guessing from the error, it should be added with explanatory text after the Summary.
It would be better if you can provide the rpm package directly

attu search got param error

Describe the bug:

When I search in attu, I got the following error message:

89a09e84f57f91b196f4f031e322fe0

Steps to reproduce:
1.
2.
3.

Attu version:
V 2.2.0

Uncaught promise type error: Cannot read 'search' from undefined

Describe the bug:
I've created a new collection with 2 fields: primary key and embedding. I've created a HNSW_PQ index on it and then loaded it into memory. I then port-forward to my Attu instance and when I try to use the search function I get this error in the console log:

http://localhost:3000/#/search

Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'search')
    at SearchParams.tsx:59:39
    at Object.Io [as useMemo] (react-dom.production.min.js:168:377)
    at t.useMemo (react.production.min.js:23:113)
    at t.default (SearchParams.tsx:56:24)
    at oo (react-dom.production.min.js:157:137)
    at Ho (react-dom.production.min.js:180:154)
    at Ws (react-dom.production.min.js:269:343)
    at wl (react-dom.production.min.js:250:347)
    at Al (react-dom.production.min.js:250:278)
    at Nl (react-dom.production.min.js:250:138)

Steps to reproduce:

  1. Create collection
  2. Load embeddings
  3. Create HNSW_PQ index
  4. Load the index
  5. At Attu startpage where it then shows the loaded collections, click "Vector search". The screen glitches and then goes blank.

Attu version:
2.0.5

Users can not select single item in Data Query results

Describe the bug:
Users can not select single item in Data Query results

Steps to reproduce:

  1. Query data in collection, find results as shown in the figure below:
    image

  2. Clik the button, select single item
    image

  3. All options are selected
    1646809598(1)
    Users can not select single item.

Attu version:
v1.22.10

Attu version:

Initial indexing progress

Describe the bug:

The index creation progress bar always displays 0% when Milvus is creating the initial index (i.e. not reindexing).

Attu polls this endpoint: /api/v1/schema/index/progress?collection_name=some_collection&field_name=some_field&index_name=some_index

but Milvus 2.1.1 returns this response:

{statusCode: 500, message: "no index is created", error: "Bad Request"}

since the index hasn't been created yet.

Attu should probably report that the index doesn't exist yet, or is being created.
Ideally Milvus would report progress on initial index creation.

Steps to reproduce:

  1. Create a Milvus collection
  2. Add some data
  3. Create an index on the vector field.
  4. While the index is being created, visit /#/collections/some_index?activeIndex=1

Attu version:

2.1.0

Vector Search 异常

Describe the bug:
在没有编辑nprobe参数前点击“Search”按钮,查询结果正常,页面显示正常。
然后修改nprobe参数值,再点击“Search”按钮,有结果列表,但页面提示错误信息如下。
fail to search on all shard leaders, err=fail to Search, QueryNode ID=17, reason=Search 17 failed, reason [UnexpectedError] Assert "adapter->CheckSearch(conf, index_type, field_indexing->indexing_->index_mode())" at /go/src/github.com/milvus-io/milvus/internal/core/src/query/SearchOnSealed.cpp:54 => [SearchOnSealed]Search params check failed err %!w()

Steps to reproduce:
1.
2.
3.

Attu version:
attu:v2.1.0
Attu version:

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.