Bài đăng này được đồng tác giả bởi Anatoly Khomenko, Kỹ sư máy học và Abdenour Bezzouh, Giám đốc công nghệ tại Talent.com.
Được thành lập vào 2011, Tài năng.com tổng hợp danh sách công việc được trả tiền từ khách hàng của họ và danh sách công việc công khai, đồng thời đã tạo ra một nền tảng thống nhất, dễ tìm kiếm. Bao gồm hơn 30 triệu danh sách việc làm trên hơn 75 quốc gia và trải rộng trên nhiều ngôn ngữ, ngành nghề và kênh phân phối khác nhau, Talent.com đáp ứng nhu cầu đa dạng của người tìm việc, kết nối hiệu quả hàng triệu người tìm việc với cơ hội việc làm.
Sứ mệnh của Talent.com là tạo điều kiện kết nối lực lượng lao động toàn cầu. Để đạt được điều này, Talent.com tổng hợp danh sách việc làm từ nhiều nguồn khác nhau trên web, cung cấp cho người tìm việc quyền truy cập vào hơn 30 triệu cơ hội việc làm phù hợp với kỹ năng và kinh nghiệm của họ. Để thực hiện sứ mệnh này, Talent.com đã hợp tác với AWS để phát triển một công cụ giới thiệu việc làm tiên tiến được thúc đẩy bởi học sâu, nhằm hỗ trợ người dùng thăng tiến trong sự nghiệp.
Để đảm bảo công cụ giới thiệu việc làm này hoạt động hiệu quả, điều quan trọng là phải triển khai quy trình xử lý dữ liệu quy mô lớn chịu trách nhiệm trích xuất và tinh chỉnh các tính năng từ danh sách việc làm tổng hợp của Talent.com. Quy trình này có thể xử lý 5 triệu bản ghi hàng ngày trong vòng chưa đầy 1 giờ và cho phép xử lý song song nhiều bản ghi trong nhiều ngày. Ngoài ra, giải pháp này cho phép triển khai nhanh chóng vào sản xuất. Nguồn dữ liệu chính cho quy trình này là định dạng Dòng JSON, được lưu trữ trong Dịch vụ lưu trữ đơn giản của Amazon (Amazon S3) và được phân vùng theo ngày. Mỗi ngày, điều này dẫn đến việc tạo ra hàng chục nghìn tệp Dòng JSON, với các bản cập nhật gia tăng diễn ra hàng ngày.
Mục tiêu chính của quy trình xử lý dữ liệu này là tạo điều kiện thuận lợi cho việc tạo ra các tính năng cần thiết cho việc đào tạo và triển khai công cụ giới thiệu việc làm trên Talent.com. Điều đáng lưu ý là quy trình này phải hỗ trợ các bản cập nhật gia tăng và đáp ứng các yêu cầu trích xuất tính năng phức tạp cần thiết cho các mô-đun đào tạo và triển khai cần thiết cho hệ thống đề xuất công việc. Quy trình của chúng tôi thuộc họ quy trình ETL (trích xuất, chuyển đổi và tải) chung kết hợp dữ liệu từ nhiều nguồn vào một kho lưu trữ trung tâm lớn.
Để hiểu rõ hơn về cách Talent.com và AWS cộng tác xây dựng các kỹ thuật đào tạo mô hình học sâu và xử lý ngôn ngữ tự nhiên tiên tiến, bằng cách sử dụng Amazon SageMaker để xây dựng hệ thống giới thiệu công việc, hãy tham khảo Từ tin nhắn đến công việc mơ ước: Xây dựng công cụ giới thiệu việc làm dựa trên NLP tại Talent.com với Amazon SageMaker. Hệ thống này bao gồm kỹ thuật tính năng, thiết kế kiến trúc mô hình học sâu, tối ưu hóa siêu tham số và đánh giá mô hình, trong đó tất cả các mô-đun được chạy bằng Python.
Bài đăng này trình bày cách chúng tôi sử dụng SageMaker để xây dựng quy trình xử lý dữ liệu quy mô lớn nhằm chuẩn bị các tính năng cho công cụ giới thiệu việc làm tại Talent.com. Giải pháp thu được cho phép Nhà khoa học dữ liệu lý tưởng hóa việc trích xuất tính năng trong sổ ghi chép SageMaker bằng cách sử dụng các thư viện Python, chẳng hạn như scikit-học or Kim tự tháp, sau đó nhanh chóng triển khai mã tương tự vào quy trình xử lý dữ liệu để thực hiện trích xuất tính năng trên quy mô lớn. Giải pháp không yêu cầu chuyển mã trích xuất tính năng để sử dụng PySpark, theo yêu cầu khi sử dụng Keo AWS như giải pháp ETL. Giải pháp của chúng tôi có thể được phát triển và triển khai hoàn toàn bởi Nhà khoa học dữ liệu từ đầu đến cuối chỉ bằng SageMaker và không yêu cầu kiến thức về các giải pháp ETL khác, chẳng hạn như Hàng loạt AWS. Điều này có thể rút ngắn đáng kể thời gian cần thiết để triển khai quy trình Machine Learning (ML) vào sản xuất. Quy trình này được vận hành thông qua Python và tích hợp liền mạch với quy trình trích xuất tính năng, khiến nó có khả năng thích ứng với nhiều ứng dụng phân tích dữ liệu.
Tổng quan về giải pháp
Đường ống bao gồm ba giai đoạn chính:
- Sử dụng một Chế biến Amazon SageMaker công việc để xử lý các tệp JSONL thô được liên kết với một ngày được chỉ định. Dữ liệu nhiều ngày có thể được xử lý đồng thời bằng các công việc Xử lý riêng biệt.
- Thuê Keo AWS để thu thập dữ liệu sau khi xử lý dữ liệu trong nhiều ngày.
- Tải các tính năng được xử lý cho một phạm vi ngày được chỉ định bằng cách sử dụng SQL từ một amazon Athena table, sau đó huấn luyện và triển khai mô hình tư vấn công việc.
Xử lý các tệp JSONL thô
Chúng tôi xử lý các tệp JSONL thô trong một ngày được chỉ định bằng cách sử dụng công việc Xử lý SageMaker. Công việc thực hiện trích xuất tính năng và nén dữ liệu, đồng thời lưu các tính năng đã xử lý vào tệp Parquet với 1 triệu bản ghi trên mỗi tệp. Chúng tôi tận dụng tính năng song song hóa CPU để thực hiện trích xuất tính năng song song cho từng tệp JSONL thô. Kết quả xử lý của mỗi tệp JSONL được lưu vào một tệp Parquet riêng bên trong một thư mục tạm thời. Sau khi tất cả các tệp JSONL đã được xử lý, chúng tôi thực hiện nén hàng nghìn tệp Parquet nhỏ thành nhiều tệp với 1 triệu bản ghi trên mỗi tệp. Sau đó, các tệp Parquet được nén sẽ được tải lên Amazon S3 dưới dạng đầu ra của công việc xử lý. Việc nén dữ liệu đảm bảo thu thập thông tin và truy vấn SQL hiệu quả trong các giai đoạn tiếp theo của quy trình.
Sau đây là mã mẫu để lên lịch công việc Xử lý SageMaker cho một ngày được chỉ định, ví dụ: 2020-01-01, bằng cách sử dụng SageMaker SDK. Công việc đọc các tệp JSONL thô từ Amazon S3 (ví dụ từ s3://bucket/raw-data/2020/01/01
) và lưu các tệp Parquet đã nén vào Amazon S3 (ví dụ: s3://bucket/processed/table-name/day_partition=2020-01-01/
).
### install dependencies %pip install sagemaker pyarrow s3fs awswrangler import sagemaker
import boto3 from sagemaker.processing import FrameworkProcessor
from sagemaker.sklearn.estimator import SKLearn
from sagemaker import get_execution_role
from sagemaker.processing import ProcessingInput, ProcessingOutput region = boto3.session.Session().region_name
role = get_execution_role()
bucket = sagemaker.Session().default_bucket() ### we use instance with 16 CPUs and 128 GiB memory
### note that the script will NOT load the entire data into memory during compaction
### depending on the size of individual jsonl files, larger instance may be needed
instance = "ml.r5.4xlarge"
n_jobs = 8 ### we use 8 process workers
date = "2020-01-01" ### process data for one day est_cls = SKLearn
framework_version_str = "0.20.0" ### schedule processing job
script_processor = FrameworkProcessor( role=role, instance_count=1, instance_type=instance, estimator_cls=est_cls, framework_version=framework_version_str, volume_size_in_gb=500,
) script_processor.run( code="processing_script.py", ### name of the main processing script source_dir="../src/etl/", ### location of source code directory ### our processing script loads raw jsonl files directly from S3 ### this avoids long start-up times of the processing jobs, ### since raw data does not need to be copied into instance inputs=[], ### processing job input is empty outputs=[ ProcessingOutput(destination="s3://bucket/processed/table-name/", source="/opt/ml/processing/output"), ], arguments=[ ### directory with job's output "--output", "/opt/ml/processing/output", ### temporary directory inside instance "--tmp_output", "/opt/ml/tmp_output", "--n_jobs", str(n_jobs), ### number of process workers "--date", date, ### date to process ### location with raw jsonl files in S3 "--path", "s3://bucket/raw-data/", ], wait=False
)
Phác thảo mã sau đây cho tập lệnh chính (processing_script.py
) chạy công việc Xử lý SageMaker như sau:
import concurrent
import pyarrow.dataset as ds
import os
import s3fs
from pathlib import Path ### function to process raw jsonl file and save extracted features into parquet file from process_data import process_jsonl ### parse command line arguments
args = parse_args() ### we use s3fs to crawl S3 input path for raw jsonl files
fs = s3fs.S3FileSystem()
### we assume raw jsonl files are stored in S3 directories partitioned by date
### for example: s3://bucket/raw-data/2020/01/01/
jsons = fs.find(os.path.join(args.path, *args.date.split('-'))) ### temporary directory location inside the Processing job instance
tmp_out = os.path.join(args.tmp_output, f"day_partition={args.date}") ### directory location with job's output
out_dir = os.path.join(args.output, f"day_partition={args.date}") ### process individual jsonl files in parallel using n_jobs process workers
futures=[]
with concurrent.futures.ProcessPoolExecutor(max_workers=args.n_jobs) as executor: for file in jsons: inp_file = Path(file) out_file = os.path.join(tmp_out, inp_file.stem + ".snappy.parquet") ### process_jsonl function reads raw jsonl file from S3 location (inp_file) ### and saves result into parquet file (out_file) inside temporary directory futures.append(executor.submit(process_jsonl, file, out_file)) ### wait until all jsonl files are processed for future in concurrent.futures.as_completed(futures): result = future.result() ### compact parquet files
dataset = ds.dataset(tmp_out) if len(dataset.schema) > 0: ### save compacted parquet files with 1MM records per file ds.write_dataset(dataset, out_dir, format="parquet", max_rows_per_file=1024 * 1024)
Khả năng mở rộng là một tính năng chính của quy trình của chúng tôi. Đầu tiên, có thể sử dụng nhiều công việc Xử lý SageMaker để xử lý dữ liệu trong vài ngày cùng một lúc. Thứ hai, chúng tôi tránh tải toàn bộ dữ liệu thô hoặc đã xử lý vào bộ nhớ cùng một lúc trong khi xử lý từng ngày dữ liệu được chỉ định. Điều này cho phép xử lý dữ liệu bằng cách sử dụng các loại phiên bản không thể chứa đủ dữ liệu cho cả ngày trong bộ nhớ chính. Yêu cầu duy nhất là loại phiên bản phải có khả năng tải N tệp JSONL thô hoặc tệp Parquet đã xử lý vào bộ nhớ cùng lúc, với N là số lượng nhân viên xử lý đang sử dụng.
Thu thập dữ liệu đã xử lý bằng AWS Glue
Sau khi tất cả dữ liệu thô trong nhiều ngày đã được xử lý, chúng tôi có thể tạo bảng Athena từ toàn bộ tập dữ liệu bằng cách sử dụng trình thu thập thông tin AWS Glue. Chúng tôi sử dụng AWS SDK cho gấu trúc (awswrangler) thư viện để tạo bảng bằng đoạn mã sau:
import awswrangler as wr ### crawl processed data in S3
res = wr.s3.store_parquet_metadata( path='s3://bucket/processed/table-name/', database="database_name", table="table_name", dataset=True, mode="overwrite", sampling=1.0, path_suffix='.parquet',
) ### print table schema
print(res[0])
Tải các tính năng đã xử lý để đào tạo
Giờ đây, các tính năng đã xử lý trong phạm vi ngày được chỉ định có thể được tải từ bảng Athena bằng SQL và sau đó có thể sử dụng các tính năng này để đào tạo mô hình đề xuất công việc. Ví dụ: đoạn mã sau tải các tính năng đã xử lý trong một tháng vào DataFrame bằng cách sử dụng awswrangler
thư viện:
import awswrangler as wr query = """ SELECT * FROM table_name WHERE day_partition BETWEN '2020-01-01' AND '2020-02-01' """ ### load 1 month of data from database_name.table_name into a DataFrame
df = wr.athena.read_sql_query(query, database='database_name')
Ngoài ra, việc sử dụng SQL để tải các tính năng đã xử lý cho hoạt động đào tạo có thể được mở rộng để phù hợp với nhiều trường hợp sử dụng khác. Ví dụ: chúng ta có thể áp dụng quy trình tương tự để duy trì hai bảng Athena riêng biệt: một bảng để lưu trữ số lần hiển thị của người dùng và một bảng khác để lưu trữ số lần nhấp chuột của người dùng vào các lần hiển thị này. Bằng cách sử dụng các câu lệnh nối SQL, chúng tôi có thể truy xuất các lần hiển thị mà người dùng đã nhấp vào hoặc không nhấp vào, sau đó chuyển các lần hiển thị này sang công việc đào tạo mô hình.
Lợi ích giải pháp
Việc triển khai giải pháp được đề xuất mang lại một số lợi thế cho quy trình làm việc hiện tại của chúng tôi, bao gồm:
- Đơn giản hóa triển khai – Giải pháp cho phép triển khai trích xuất tính năng trong Python bằng các thư viện ML phổ biến. Và nó không yêu cầu phải chuyển mã vào PySpark. Điều này hợp lý hóa việc trích xuất tính năng vì cùng một mã do Nhà khoa học dữ liệu phát triển trong sổ ghi chép sẽ được thực thi bởi quy trình này.
- Con đường sản xuất nhanh chóng – Giải pháp có thể được Nhà khoa học dữ liệu phát triển và triển khai để thực hiện trích xuất tính năng trên quy mô lớn, cho phép họ phát triển mô hình đề xuất ML dựa trên dữ liệu này. Đồng thời, giải pháp tương tự có thể được Kỹ sư ML triển khai vào sản xuất mà không cần sửa đổi nhiều.
- Tái sử dụng – Giải pháp cung cấp một mẫu có thể tái sử dụng để trích xuất tính năng trên quy mô lớn và có thể dễ dàng điều chỉnh cho các trường hợp sử dụng khác ngoài việc xây dựng các mô hình đề xuất.
- Hiệu quả – Giải pháp mang lại hiệu quả tốt: xử lý một ngày duy nhất của Tài năng.comdữ liệu của nó mất chưa đầy 1 giờ.
- Cập nhật tăng dần – Giải pháp cũng hỗ trợ cập nhật gia tăng. Dữ liệu mới hàng ngày có thể được xử lý bằng công việc Xử lý SageMaker và vị trí S3 chứa dữ liệu đã xử lý có thể được thu thập lại thông tin để cập nhật bảng Athena. Chúng tôi cũng có thể sử dụng công việc định kỳ để cập nhật dữ liệu ngày hôm nay vài lần mỗi ngày (ví dụ: 3 giờ một lần).
Chúng tôi đã sử dụng quy trình ETL này để giúp Talent.com xử lý 50,000 tệp mỗi ngày chứa 5 triệu bản ghi và tạo dữ liệu đào tạo bằng cách sử dụng các tính năng được trích xuất từ dữ liệu thô trong 90 ngày từ Talent.com—tổng cộng 450 triệu bản ghi trên 900,000 tệp. Quy trình của chúng tôi đã giúp Talent.com xây dựng và triển khai hệ thống đề xuất vào sản xuất chỉ trong vòng 2 tuần. Giải pháp đã thực hiện tất cả các quy trình ML bao gồm ETL trên Amazon SageMaker mà không cần sử dụng dịch vụ AWS khác. Hệ thống đề xuất công việc đã giúp tỷ lệ nhấp trong thử nghiệm A/B trực tuyến tăng 8.6% so với giải pháp dựa trên XGBoost trước đó, giúp kết nối hàng triệu người dùng Talent.com với công việc tốt hơn.
Kết luận
Bài đăng này phác thảo quy trình ETL mà chúng tôi đã phát triển để xử lý tính năng nhằm đào tạo và triển khai mô hình giới thiệu việc làm tại Talent.com. Quy trình của chúng tôi sử dụng các công việc Xử lý SageMaker để xử lý dữ liệu hiệu quả và trích xuất tính năng ở quy mô lớn. Mã trích xuất tính năng được triển khai bằng Python cho phép sử dụng các thư viện ML phổ biến để thực hiện trích xuất tính năng trên quy mô lớn mà không cần chuyển mã sang sử dụng PySpark.
Chúng tôi khuyến khích người đọc khám phá khả năng sử dụng quy trình được trình bày trong blog này làm mẫu cho các trường hợp sử dụng của họ, trong đó cần phải trích xuất tính năng trên quy mô lớn. Nhà khoa học dữ liệu có thể tận dụng quy trình này để xây dựng mô hình ML và sau đó Kỹ sư ML có thể áp dụng quy trình tương tự đó để chạy trong sản xuất. Điều này có thể giảm đáng kể thời gian cần thiết để sản xuất giải pháp ML từ đầu đến cuối, như trường hợp của Talent.com. Bạn đọc có thể tham khảo các hướng dẫn thiết lập và chạy các công việc Xử lý SageMaker. Chúng tôi cũng giới thiệu quý độc giả xem bài viết Từ tin nhắn đến công việc mơ ước: Xây dựng công cụ giới thiệu việc làm dựa trên NLP tại Talent.com với Amazon SageMaker, nơi chúng tôi thảo luận về các kỹ thuật đào tạo mô hình học sâu bằng cách sử dụng Amazon SageMaker xây dựng hệ thống giới thiệu việc làm của Talent.com.
Giới thiệu về tác giả
Dmitry Bespalov là Nhà khoa học ứng dụng cấp cao tại Phòng thí nghiệm giải pháp máy học của Amazon, nơi ông giúp khách hàng AWS trong các ngành khác nhau đẩy nhanh việc áp dụng AI và đám mây của họ.
Yi Tương là Nhà khoa học ứng dụng II tại Phòng thí nghiệm giải pháp học máy của Amazon, nơi cô giúp khách hàng AWS ở các ngành khác nhau tăng tốc việc áp dụng AI và đám mây.
Tống Vương là Nhà khoa học ứng dụng cấp cao tại Phòng thí nghiệm giải pháp máy học của Amazon, nơi ông giúp khách hàng AWS trong các ngành khác nhau đẩy nhanh việc áp dụng AI và đám mây của họ.
Anatoly Khomenko là Kỹ sư máy học cao cấp tại Tài năng.com với niềm đam mê xử lý ngôn ngữ tự nhiên, kết nối người giỏi với công việc tốt.
Abdenour Bezzouh là giám đốc điều hành với hơn 25 năm kinh nghiệm xây dựng và cung cấp các giải pháp công nghệ có quy mô cho hàng triệu khách hàng. Abdenour giữ chức vụ Giám đốc Công nghệ (CTO) tại Tài năng.com khi nhóm AWS thiết kế và triển khai giải pháp cụ thể này cho Tài năng.com.
Yên Quân Tề là Giám đốc khoa học ứng dụng cấp cao tại Phòng thí nghiệm giải pháp máy học của Amazon. Cô đổi mới và áp dụng công nghệ máy học để giúp các khách hàng của AWS tăng tốc độ tiếp nhận AI và đám mây của họ.
- Phân phối nội dung và PR được hỗ trợ bởi SEO. Được khuếch đại ngay hôm nay.
- PlatoData.Network Vertical Generative Ai. Trao quyền cho chính mình. Truy cập Tại đây.
- PlatoAiStream. Thông minh Web3. Kiến thức khuếch đại. Truy cập Tại đây.
- Trung tâmESG. Than đá, công nghệ sạch, Năng lượng, Môi trường Hệ mặt trời, Quản lý chất thải. Truy cập Tại đây.
- PlatoSức khỏe. Tình báo thử nghiệm lâm sàng và công nghệ sinh học. Truy cập Tại đây.
- nguồn: https://aws.amazon.com/blogs/machine-learning/streamlining-etl-data-processing-at-talent-com-with-amazon-sagemaker/
- : có
- :là
- :không phải
- :Ở đâu
- $ LÊN
- 000
- 1
- 100
- 16
- 20
- 2011
- 25
- 30
- 50
- 7
- 75
- 8
- 900
- a
- Có khả năng
- đẩy nhanh tiến độ
- truy cập
- chứa
- Đạt được
- ngang qua
- Ngoài ra
- con nuôi
- Nhận con nuôi
- thăng tiến
- Lợi thế
- lợi thế
- Sau
- chống lại
- tổng hợp
- AI
- nhằm vào
- Tất cả
- cho phép
- Ngoài ra
- đàn bà gan dạ
- Học máy Amazon
- Amazon SageMaker
- Amazon Web Services
- an
- phân tích
- và
- Một
- các ứng dụng
- áp dụng
- áp dụng
- Đăng Nhập
- kiến trúc
- LÀ
- đối số
- AS
- trợ giúp
- liên kết
- đảm đương
- At
- tránh
- AWS
- Keo AWS
- BE
- được
- được
- thuộc
- Hơn
- Ngoài
- Blog
- Mang lại
- xây dựng
- Xây dựng
- xây dựng
- by
- CAN
- có khả năng
- sự nghiệp
- trường hợp
- trường hợp
- phục vụ
- phục vụ
- trung tâm
- kênh
- chánh
- Giám đốc Công nghệ
- Nhấp chuột
- khách hàng
- đám mây
- áp dụng đám mây
- mã
- hợp tác
- COM
- kết hợp
- nhỏ gọn
- Bao gồm
- đồng thời
- Kết nối
- Kết nối
- Kết nối
- nước
- bao gồm
- nghề
- thu thập thông tin
- tạo
- tạo ra
- tạo
- quan trọng
- CTO
- khách hàng
- tiên tiến
- tiền thưởng
- dữ liệu
- Phân tích dữ liệu
- xử lý dữ liệu
- nhà khoa học dữ liệu
- Ngày
- ngày
- Ngày
- sâu
- học kĩ càng
- phân phối
- phụ thuộc
- Tùy
- triển khai
- triển khai
- triển khai
- triển khai
- Thiết kế
- thiết kế
- phát triển
- phát triển
- khác nhau
- trực tiếp
- thư mục
- thảo luận
- phân phối
- khác nhau
- làm
- giấc mơ
- điều khiển
- suốt trong
- mỗi
- dễ dàng
- Hiệu quả
- hiệu quả
- hiệu quả
- hay
- cho phép
- cho phép
- khuyến khích
- Cuối cùng đến cuối
- Động cơ
- ky sư
- Kỹ Sư
- đảm bảo
- đảm bảo
- Toàn bộ
- thiết yếu
- đánh giá
- Mỗi
- ví dụ
- Thực thi
- điều hành
- hiện tại
- kinh nghiệm
- Kinh nghiệm
- khám phá
- gia tăng
- mở rộng
- trích xuất
- khai thác
- tạo điều kiện
- gia đình
- Đặc tính
- Tính năng
- Tập tin
- Các tập tin
- Tên
- tiếp theo
- sau
- Trong
- định dạng
- từ
- FS
- Full
- chức năng
- xa hơn
- tương lai
- Futures
- Tổng Quát
- thế hệ
- Toàn cầu
- tốt
- xử lý
- Có
- he
- Được tổ chức
- giúp đỡ
- đã giúp
- giúp đỡ
- giúp
- giờ
- GIỜ LÀM VIỆC
- Độ đáng tin của
- HTML
- http
- HTTPS
- Tối ưu hóa siêu tham số
- if
- ii
- thực hiện
- thực hiện
- thực hiện
- nhập khẩu
- in
- bao gồm
- Bao gồm
- Tăng lên
- gia tăng
- hệ thống riêng biệt,
- các ngành công nghiệp
- đầu vào
- trong
- những hiểu biết
- cài đặt, dựng lên
- ví dụ
- Tích hợp
- trong
- IT
- Việc làm
- việc làm
- tham gia
- jpg
- json
- Key
- kiến thức
- phòng thí nghiệm
- Ngôn ngữ
- Ngôn ngữ
- lớn
- quy mô lớn
- lớn hơn
- học tập
- ít
- tận dụng
- thư viện
- Thư viện
- Dòng
- dòng
- Các bảng liệt kê
- ít
- tải
- tải
- tải
- địa điểm thư viện nào
- dài
- máy
- học máy
- Chủ yếu
- duy trì
- giám đốc
- phù hợp
- Có thể..
- Bộ nhớ
- triệu
- hàng triệu
- Sứ mệnh
- ML
- kiểu mẫu
- mô hình
- Sửa đổi
- Modules
- tháng
- chi tiết
- nhiều
- phải
- tên
- Tự nhiên
- Xử lý ngôn ngữ tự nhiên
- cần thiết
- Cần
- cần thiết
- nhu cầu
- Mới
- tiếp theo
- ghi
- máy tính xách tay
- Lưu ý
- tại
- con số
- Mục tiêu
- xảy ra
- of
- cung cấp
- Cung cấp
- Nhân viên văn phòng
- on
- hàng loạt
- ONE
- Trực tuyến
- có thể
- vận hành
- hoạt động
- Cơ hội
- tối ưu hóa
- or
- OS
- Nền tảng khác
- vfoXNUMXfipXNUMXhfpiXNUMXufhpiXNUMXuf
- đề cương
- đề cương
- đầu ra
- kết thúc
- tổng quan
- thanh toán
- gấu trúc
- Song song
- riêng
- vượt qua
- niềm đam mê
- con đường
- Họa tiết
- người
- mỗi
- Thực hiện
- hiệu suất
- thực hiện
- biểu diễn
- đường ống dẫn
- nền tảng
- plato
- Thông tin dữ liệu Plato
- PlatoDữ liệu
- hồ bơi
- Phổ biến
- vị trí
- khả năng
- Bài đăng
- chuẩn bị
- trình bày
- trước
- chính
- In
- quá trình
- Xử lý
- Quy trình
- xử lý
- Sản lượng
- đề xuất
- cung cấp
- công khai
- Python
- Qi
- truy vấn
- Nhanh chóng
- Mau
- phạm vi
- Tỷ lệ
- Nguyên
- độc giả
- Khuyến nghị
- hồ sơ
- giảm
- xem
- tinh luyện
- khu
- vẽ
- kho
- yêu cầu
- cần phải
- yêu cầu
- Yêu cầu
- chịu trách nhiệm
- kết quả
- kết quả
- Kết quả
- có thể tái sử dụng
- Vai trò
- chạy
- chạy
- chạy
- s
- nhà làm hiền triết
- tương tự
- Lưu
- lưu
- Quy mô
- lịch trình
- Khoa học
- Nhà khoa học
- kịch bản
- sdk
- liền mạch
- Thứ hai
- chọn
- cao cấp
- riêng biệt
- dịch vụ
- DỊCH VỤ
- Phiên
- thiết lập
- một số
- chị ấy
- nên
- Chương trình
- đáng kể
- tương tự
- Đơn giản
- đồng thời
- kể từ khi
- duy nhất
- Kích thước máy
- kỹ năng
- nhỏ
- đoạn
- chỉ duy nhất
- giải pháp
- Giải pháp
- nguồn
- mã nguồn
- nguồn
- Vôn
- quy định
- tốc độ
- giai đoạn
- Khởi động
- báo cáo
- thân cây
- là gắn
- lưu trữ
- lưu trữ
- sắp xếp hợp lý
- tinh giản
- như vậy
- hỗ trợ
- Hỗ trợ
- hệ thống
- bàn
- phù hợp
- Hãy
- Năng lực
- nhóm
- kỹ thuật
- Công nghệ
- mẫu
- tạm thời
- hàng chục
- Kiểm tra
- văn bản
- hơn
- việc này
- Sản phẩm
- cung cấp their dịch
- Them
- sau đó
- Kia là
- điều này
- hàng ngàn
- số ba
- Thông qua
- thời gian
- thời gian
- đến
- hôm nay
- Tổng số:
- Train
- Hội thảo
- Chuyển đổi
- hai
- kiểu
- loại
- thống nhât
- cho đến khi
- Cập nhật
- Cập nhật
- tải lên
- sử dụng
- trường hợp sử dụng
- đã sử dụng
- người sử dang
- Người sử dụng
- sử dụng
- sử dụng
- Bằng cách sử dụng
- khác nhau
- Xem
- chờ đợi
- là
- we
- web
- các dịch vụ web
- tuần
- khi nào
- trong khi
- rộng
- Phạm vi rộng
- sẽ
- với
- ở trong
- không có
- công nhân
- quy trình làm việc
- Luồng công việc
- Lực lượng lao động
- giá trị
- năm
- zephyrnet