Следите за новостями GitVerse в нашем телеграм-канале

gemma.cpp

0
/
BUILD.bazel 
97 строк · 1.7 Кб
1
# gemma.cpp is a lightweight, standalone C++ inference engine for the Gemma
2
# foundation models from Google.
3

4
load("@rules_license//rules:license.bzl", "license")
5

6
package(
7
    default_applicable_licenses = ["//:license"],
8
    default_visibility = ["//visibility:public"],
9
)
10

11
license(
12
    name = "license",
13
    package_name = "gemma_cpp",
14
)
15

16
# Dual-licensed Apache 2 and 3-clause BSD.
17
licenses(["notice"])
18

19
exports_files(["LICENSE"])
20

21
cc_library(
22
    name = "transformer_ops",
23
    hdrs = [
24
        "ops.h",
25
    ],
26
    deps = [
27
        "//compression:compress",
28
        "@hwy//:algo",
29
        "@hwy//:dot",
30
        "@hwy//:hwy",
31
        "@hwy//:math",
32
        "@hwy//:matvec",
33
        "@hwy//:profiler",
34
        "@hwy//:thread_pool",
35
        "@hwy//hwy/contrib/sort:vqsort",
36
    ],
37
)
38

39
cc_library(
40
    name = "args",
41
    hdrs = [
42
        "util/args.h",
43
    ],
44
    deps = [
45
        "@hwy//:hwy",
46
    ],
47
)
48

49
cc_library(
50
    name = "app",
51
    hdrs = [
52
        "util/app.h",
53
    ],
54
    deps = [
55
        ":args",
56
        "@hwy//:hwy",
57
    ],
58
)
59

60
cc_library(
61
    name = "gemma_lib",
62
    srcs = [
63
        "gemma.cc",
64
    ],
65
    hdrs = [
66
        "configs.h",
67
        "gemma.h",
68
    ],
69
    deps = [
70
        ":args",
71
        ":transformer_ops",
72
        "//compression:compress",
73
        "@hwy//:hwy",
74
        "@hwy//:matvec",
75
        "@hwy//:nanobenchmark",  # timer
76
        "@hwy//:profiler",
77
        "@hwy//:thread_pool",
78
        "@com_google_sentencepiece//:sentencepiece_processor",
79
    ],
80
)
81

82
cc_binary(
83
    name = "gemma",
84
    srcs = [
85
        "run.cc",
86
    ],
87
    deps = [
88
        ":app",
89
        ":args",
90
        ":gemma_lib",
91
        "//compression:compress",
92
        "@hwy//:hwy",
93
        "@hwy//:nanobenchmark",
94
        "@hwy//:profiler",
95
        "@hwy//:thread_pool",
96
    ],
97
)
98

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.